利用springboot怎么进行多模块开发?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
<强>为何模块开发强>
先举个栗子,同一张数据表,可能要在多个项目中或功能中使用,所以就有可能在每个模块都要搞一个mybatis去配置。如果一开始规定说这张表一定不可以改字段属性,那么没毛病。但是事实上,一张表从项目开始到结束,不知道被改了多少遍,所以,你有可能在多个项目中去改mybatis改到吐的血!
在举一个栗子,一个web服务里包含了多个功能模块,比如其中一个功能可能会消耗大量资源和时间,当用户调用这个功能的时候,可能会影响到其他功能的正常使用,这个时候,如果把各个功能模块分出来单独部署,然后通过http请求去调用,至于性能和响应速度,再单独去优化,将会非常爽!这也有利于将来的
<强>分布式集群
强>
根据当前的业务需求,我需要重构现有网络的功能,多模块化,然后单独部署,基本架构示意图如下
<强>怎样分模块强>
注意:下面配置的步骤是基于IntelliJ IDEA 2016.3.4(64),不保证eclipse能成功。如果你还在使用eclipse,建议你删掉它,使用想法吧
1,创建maven主项目例如,springbootmodules,并删掉src文件
2,右键项目分别创建三个模块,刀,service1, service2
3,将之前项目用到的依赖写在主项目的pom里,这里要注意
4, dao层主要提供实体类,豆腐接口和xml映射文件
5,一定要在service1生成和service2配置数据库的相关信息,并添加弹簧的相关配置
6,编写接口测试
<强>相关代码强>
父项目pom
& lt;及# 63;xml version=?.0”;编码=癠TF-8", # 63;比; http://maven.apache.org/POM/4.0.0" & lt;项目xmlns=? xmlns: xsi=癶ttp://www.w3.org/2001/XMLSchema-instance" ,xsi: schemaLocation=癶ttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"的在; & lt; modelVersion> 4.0.0 & lt; groupId> com.boot.lean & lt; artifactId> springbootquick & lt; version> 1.0 -snapshot & lt; modules> & lt; module> dao & lt; module> service1 & lt; module> service2 & lt;/modules> & lt; packaging> pom & lt; name> springbootquick & lt; parent> & lt; groupId> org.springframework.boot & lt; artifactId> spring-boot-starter-parent & lt; version> 1.5.1.RELEASE & lt; relativePath/比;& lt; !——从库中查找父——比; & lt;/parent> & lt; properties> & lt; project.build.sourceEncoding> UTF-8 & lt; shadedClassifier> bin & lt; java.version> 1.8 & lt;/java.version> & lt; mybatis-spring-boot> 1.2.0 & lt; mysql-connector> 5.1.39 & lt;/properties> & lt; dependencies> & lt; !——春天引导Web依赖——比; & lt; dependency> & lt; groupId> org.springframework.boot & lt; artifactId> spring-boot-starter-web & lt;/dependency> & lt; !——春天引导测试依赖——比; & lt; dependency> & lt; groupId> org.springframework.boot & lt; artifactId> spring-boot-starter-test & lt; scope> test & lt;/dependency> & lt; !——春天引导Mybatis依赖——比; & lt; dependency> & lt; groupId> org.mybatis.spring.boot & lt; artifactId> mybatis-spring-boot-starter & lt; version> $ {mybatis-spring-boot} & lt;/version> & lt;/dependency> & lt; !——MySQL连接驱动依赖——比; & lt; dependency> & lt; groupId> mysql & lt; artifactId> mysql-connector-java & lt; version> $ {mysql-connector} & lt;/version> & lt;/dependency> & lt; !——Junit祝辞 & lt; dependency> & lt; groupId> junit & lt; artifactId> junit & lt; version> 4.12 & lt;/version> & lt;/dependency> & lt; dependency> & lt; groupId> org.apache.commons & lt; artifactId> commons-pool2利用springboot怎么进行多模块开发