`

maven+springboot创建父子项目

阅读更多

背景:

学习maven项目构建工具,结合springboot手写一个maven父子工程项目,这个demo只为单纯的学习maven两大核心功能:依赖管理、项目构建

 

demo结构:

user【maven父工程】

      controller【maven子模块】

      pom.xml

      service【maven子模块】

      pom.xml

      dao【maven子模块】

      pom.xml

pom.xml

controller模块依赖service模块,service模块依赖dao模块

大致思路是将传统的一个包含controller、service、dao层级结构的项目,按层级拆分为三个maven子模块,并通过maven的依赖管理,最终聚合成一个完成的工程

 

demo结构说明

1.父工程pom,在父工程里面引入了springboot公用的spring-boot-starter-parent,指定了jdk编译版本,及包含的子模块,注意父工程的打包类型要选为pom,并install到maven本地仓库

 

 

 

2.子工程

      a.user-dao模块,这个子工程打包要选择jar包,service模块中要依赖此jar包,dao开发完成后,使用maven的install命令安装进本地仓库



 

      b.user-service模块,service子模块要依赖dao模块获取数据,所以这里要添加依赖关系,同理开发完成后install到maven本地仓库



 

     c.user-controller模块,这里要依赖service子模块,根据maven的传递性,也可以依赖到dao子模块,注意看application.java的包层级关系,这个类放到boot包下,其他的controller、service、dao都放到了boot的子包下了,这是因为springboot的启动类application默认扫描所有它所在包及其子包下的spring bean,这也是模块拆分的关键,service、dao以jar包的形式被依赖进来,在springboot启动扫描时也会被扫描到加载到spring容器内

 



 

启动的时候,在controller子模块下,直接运行application即可启动,启动后访问

http://localhost:8080/query看到如下效果即为成功

 

附件为demo全部代码

 

  • 大小: 59.7 KB
  • 大小: 57.7 KB
  • 大小: 33.9 KB
  • 大小: 41.1 KB
  • 大小: 11.6 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics