时间:2021-05-19
为何模块开发
先举个栗子,同一张数据表,可能要在多个项目中或功能中使用,所以就有可能在每个模块都要搞一个mybatis去配置。如果一开始规定说这张表一定不可以改字段属性,那么没毛病。但是事实上, 一张表从项目开始到结束,不知道被改了多少遍,所以,你有可能在多个项目中去改mybatis改到吐血!
在举一个栗子,一个web服务里包含了多个功能模块,比如其中一个功能可能会消耗大量资源和时间,当用户调用这个功能的时候,可能会影响到其他功能的正常使用,这个时候,如果把各个功能模块分出来单独部署,然后通过http请求去调用,至于性能和响应速度,再单独去优化,将会非常爽!这也有利于将来的
分布式集群
根据当前的业务需求,我需要重构现有的web功能,多模块化,然后单独部署,基本架构示意图如下
怎样分模块
注意:下面配置的步骤是基于IntelliJ IDEA 2016.3.4(64),不保证eclipse能成功。如果你还在使用eclipse,建议你删掉它,使用idea吧
1、创建maven主项目例如,springbootmodules,并删掉src文件
2、右键项目分别创建三个module,dao,service1,service2
3、将之前项目用到的依赖写在主项目的pom里,这里要注意
4、dao层主要提供实体类,CURD接口和xml映射文件
5、一定要在service1和service2配置数据库的相关信息,并添加spring的相关配置
6、编写接口测试
相关代码
父项目pom
<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://.boot.lean</groupId> <artifactId>dao</artifactId> <version>1.0-SNAPSHOT</version> </dependency> </dependencies><build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build></project>需要注意的是,service模块里我用的是注解配置,如图所示
结构示意图
注意配置文件里的端口号
打包测试
在父项目下执行maven命令
mvn packageservice1和service2目录下分别会产生target文件,里面包含可执行jar包,分别执行
java -jar service1-1.0-SNAPSHOTjava -jar service2-1.0-SNAPSHOT如果一切顺利的话,你可以得出下面的操作结果
注意端口号哦
有什么问题,自行解决,然后你会发现,跨过这个坑,还有无数个坑在等你~
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
springboot用以进行web项目开发的便捷性,本文不再赘述,主要是想将工作中基于springboot与gradle的多模块项目的构建经验进行总结与归纳。1
jeeplus是一款基于代码生成器的快速开发平台。前后端分离、maven多模块开发,方便多人协同开发后端选型:springboot2+mybatis+shiro
1.nginx模块--add-module=../modules/ngx_devel_kit-0.2.18--add-module=../modules/set
查看python内部模块命令,内置函数,查看python已经安装的模块命令可以用dir(modules)或者用piplist或者用help('modules')
一般情况下,一个SpringBoot应用=一个微服务=一个模块=一个有边界的上下文,如果有多个模块,我们就开发多个微服务,多个SpringBoot应用,然后使用