IDEA创建多个模块MavenSpringBoot项目
最近在学习springboot,先从创建项目开始,一般项目都是一个项目下会有多个模块,这里先创建一个最简单的实例,一个项目下有一个springboot模块项目提供web服务,引用另一个java项目(相当于业务逻辑)
期望的项目结构如下
springboot-test
—-springboot-api
—-springboot-utils
一、创建空Maven项目
首先打开IDEA,点击“Create New Project”
选择Maven,点击下一步
填写信息,直到完成项目创建
创建成功后
删除src文件夹,在pom文件中添加
<packaging>pom</packaging>
二、创建Springboot项目模块
在根项目上点击右键,选择Module
选择Spring Initializr
填写信息
选择依赖项
完成向导,springboot-api是新建出来的项目
三、创建utils项目模块
再次新建Module
选择Spring Initializr
填写信息
什么都不选,完成向导
完成后项目结构如下
四、添加项目依赖
我们希望api项目能够使用utils项目的类,需要在api项目中引用utils项目
在api项目的pom.xml的dependencies节点添加如下内容
<!--引用springboot-utils项目 -->
<dependency>
<groupId>com.gl</groupId>
<artifactId>springboot-utils</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
- 1
- 2
- 3
- 4
- 5
- 6
结果如下
五、编写测试代码
上面添加好了依赖,下面我们分别编写api项目和utils项目的测试代码验证一下项目结构和依赖
假设我们在utils项目中有个helper类,类里有个获取系统时间的方法,希望访问api接口的时候返回系统时间,api接口需要使用helper类获取系统时间
1、编写utils项目代码
在utils项目下建立包和类,如下
类中写方法
/**
* 获取当前时间
* @return
*/
public static Date getCurDate()
{
Date d = new Date();
return d;
}
2、编写api项目代码
在api项目的代码下添加包
在新建的包下添加测试类
最终结构如下
编写接口方法
3、测试
执行api项目
访问接口地址,可以显示出来时间
联系我们
填写信息
什么都不选,完成向导
完成后项目结构如下
四、添加项目依赖
我们希望api项目能够使用utils项目的类,需要在api项目中引用utils项目
在api项目的pom.xml的dependencies节点添加如下内容
<!--引用springboot-utils项目 -->
<dependency>
<groupId>com.gl</groupId>
<artifactId>springboot-utils</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
- 1
- 2
- 3
- 4
- 5
- 6
结果如下
五、编写测试代码
上面添加好了依赖,下面我们分别编写api项目和utils项目的测试代码验证一下项目结构和依赖
假设我们在utils项目中有个helper类,类里有个获取系统时间的方法,希望访问api接口的时候返回系统时间,api接口需要使用helper类获取系统时间
1、编写utils项目代码
在utils项目下建立包和类,如下
类中写方法
/**
* 获取当前时间
* @return
*/
public static Date getCurDate()
{
Date d = new Date();
return d;
}
2、编写api项目代码
在api项目的代码下添加包
在新建的包下添加测试类
最终结构如下
编写接口方法
3、测试
执行api项目
访问接口地址,可以显示出来时间
联系我们
IDEA创建多个模块MavenSpringBoot项目的更多相关文章
- 创建支持eclipse的多模块maven项目
通过maven可以创建多个关联模块的项目(Multiple Module Projects).由一个总的模块,下面包含多个子模块(子模块还可以包含子模块). 这种maven功能能支持大型的项目构建,往 ...
- maven创建子项目(适用于多模块管理项目)
在eclipse或者myeclipse下构建maven项目,该项目由多个子模块组成. 1.创建一个父项目 NEW -->project-->maven-->maven Project ...
- IntelliJ Idea14 创建Maven多模块项目
Maven多模块项目的参考资料 Sonatype上的教程 http://books.sonatype.com/mvnex-book/reference/multimodule.html 在这个教程里, ...
- Intellij IDEA13 创建多模块Maven项目
目标:构建一个类似于如下图所示的这种结构的Maven项目. 首先,需要选中“File”——>“New Project”如下图所示 选中“Maven”,设置项目名称与项目构建地址,点击“Next” ...
- 从头开始编写一个Orchard网上商店模块(3) - 创建Orchard.Webshop模块项目
原文地址:http://skywalkersoftwaredevelopment.net/blog/writing-an-orchard-webshop-module-from-scratch-par ...
- IntelliJ IDEA创建多模块依赖项目
刚从Eclipse转IDEA, 所以记录一下IDEA的使用 创建多模块依赖项目 1. 新建父工程 这样就创建好了一个普通项目,一般我们会把src删掉,在此项目下新建新的模块 2. 新建子模块 创建供前 ...
- idea创建Maven多模块项目
最近几天学习到了创建多模块项目,应为自己使用的是Idea,所以想用idea创建多模块,查阅了相关资料后,自己做一个记录. 一.首先创建一个maven项目 Parent Project,创建xxx-ro ...
- IntelliJ IDEA创建maven多模块项目
创建完成后的目录结构如下: 一.项目主要分成3个模块,yves-parent为父模块,yves-dao和yves-web(webapp类型的模块)为子模块. 二 .Parent Project,创建y ...
- 如何在idea里面新建一个maven项目,然后在这个maven项目里创建多个子模块
如何在idea里面配置maven我这里就不多说了 先新建一个maven项目作为总的管理项目 不用勾选什么,直接下一步 这样子一个普通的maven项目就创建成功了. 因为这个项目是用来管理多个子模块的, ...
随机推荐
- 035 控制并发 select * from test1 where id =1 for update 就会对这行加锁了?
今天在看同事程序的时候,看到这种用法,顺便学习下. 一:理论 1.功能 这个功能是上锁. 上的是一个排它锁,也就是说,其他的事务是可以读取的.但是不能写入或者更新. 二:实践 1.创建表 2.提交一条 ...
- 009 spring boot中文件的上传与下载
一:任务 1.任务 文件的上传 文件的下载 二:文件的上传 1.新建一个对象 FileInfo.java package com.cao.dto; public class FileInfo { pr ...
- SQL注入——SQL Injection
本文部分内容转自:https://www.cnblogs.com/rush/archive/2011/12/31/2309203.html http://www.diybl.com/course/7_ ...
- POJ 2531-Network Saboteur(dfs)
题目链接:https://vjudge.net/problem/POJ-2531 最大流-最小割问题: https://wenku.baidu.com/view/54323c030722192e453 ...
- linux 服务器安装 nginx
每次安装 nginx 都在网上找教程,这次特意记录一下安装过程. 第一步:安装依赖 一键安装依赖 yum -y install gcc zlib zlib-devel pcre-devel opens ...
- 开发环境之git:团队协作git工作流与常用命令
此篇文章只是一篇傻瓜式的,记录工作中比较规范且常见的一个git工作流需要用到的命令,让你可以快速的开始工作.而不是一些长篇大论的理论知识,如果你有用过sourcetree或者其它图形化工具,结合你正在 ...
- XamarinEssentials教程应用程序信息AppInfo
XamarinEssentials教程应用程序信息AppInfo 很多应用程序都提供一个“关于”功能.该功能会向用户展示应用程序的基本信息,如版本号.应用程序名称等.这个功能可以通过Xamarin ...
- Django路由详解
一.路由基础 1.路由url函数:路由自上而下进行匹配:url(正则路径,视图函数内存地址,默认参数,路由别名) 2.路由正则: 规定开始:^ | 规定结束:$ #url(r'index', view ...
- [OC] Block的使用
由ControllerA跳转到controllerB,在controllerB中选择一个参数的值,并将它传回给controllerA. 首先,在controllerB的.h文件中写入: @interf ...
- Centos6.5部署Rsyslog+cron+rsync备份服务器
1.前言 rsync是一种快速且功能非常广泛的文件复制工具.它可以在本地复制,通过任何远程shell复制到/从另一个主机复制,也可以复制到/从远程rsync守护进程.它提供了大量的选项,可以控制其行为 ...