欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

正确有效的idea spring boot SSM整合 多模块项目环境搭建

程序员文章站 2024-02-26 22:02:40
...

 

   最近刚学spring boot 对于spring boot 我只有一个句话 那就是 “太便捷了” 以前对于学习新知识过于认真的我 在平时的编程中 繁琐的步骤给与我太多的阻力 如果能从一开始项目的环境搭建中解放出来那么就可以用更多的时间思考去整理所需技术 真的感谢spring boot 的开发者 也希望spring 系列能永久的辉煌下去 

完整项目环境搭建 码云仓库地址:https://gitee.com/xiaoZhengJC/springboot-ssm-test

克隆:https://gitee.com/xiaoZhengJC/springboot-ssm-test.git

工具给提供:

IntelliJ IDEA 2018.1.6 (Ultimate Edition)
Build #IU-181.5540.7, built on July 11, 2018

我的IntelliJ IDEA 2018.1.6 (Ultimate Edition)** 安装 基本配置 及 Typora makedown 工具下载和使用

链接:https://pan.baidu.com/s/1FQIQLnj1YgNS63jFJbEfzQ 密码:bbt9

步骤先总结:

创建 父项目 parent(spring boot jar 记得删除 src 文件) + common(maven jar项目)+dao(maven jar项目)+domain(maven jar项目)+service(maven jar项目)+web(spring boot jar

需求先处理:

相关的maven 版本  百度网盘地址:https://pan.baidu.com/s/1_kdglYpAClD63PkIgDlVBw 密码:8usq

repository 仓库  百度网盘地址:https://pan.baidu.com/s/1b9597X39weqpDx4GpycNRg 密码:yrlg

有关Maven的配置查看:https://blog.csdn.net/weixin_42545531/article/details/82661196

注意先说明:

相关的 启动器  连接池 。。。等依赖坐标 都选择放在 父项目 的pom下

相关web 的页面 js css 等自己在 web项目的resource 下创建 static 文件夹存放

web 项目 默认的parent 是

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.4.RELEASE</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent

需要换成我们的parent(从其他子项目中粘贴即可)

虽然每一个spring boot 都要有 spring-boot-starter-parent 但是如果父项目有也是可以的

文件依赖关系:dao 依赖 domain common  service 依赖 dao web 依赖 service

(一切的要写的文件最好 位于 web 的webApplication 启动类 的平级或同包名下 包结构示意图)

正确有效的idea spring boot SSM整合 多模块项目环境搭建

正确有效的idea spring boot SSM整合 多模块项目环境搭建

  好了 现在就创建一个spring boot ssm整合 多模块项目的父工程·

1.file >> new >> Project 注意不是Model

正确有效的idea spring boot SSM整合 多模块项目环境搭建

 

 

2. 选择 Spring Initializr  点击next

正确有效的idea spring boot SSM整合 多模块项目环境搭建3 在page中删除springboot-parent group Artifact 参考maven 自己编写 其他都是默认的无需修改 点击next

正确有效的idea spring boot SSM整合 多模块项目环境搭建

4.这里选择版本 默认是2.0.4 其他有关依赖暂时不选 直接 点击next

正确有效的idea spring boot SSM整合 多模块项目环境搭建

5 点击next

正确有效的idea spring boot SSM整合 多模块项目环境搭建6.点击new window 新窗口打开

正确有效的idea spring boot SSM整合 多模块项目环境搭建7.这个时候注意了一定要选择 Enable Auto-Import 不然的话会给后面造成很大的影响 运行时各种依赖错误

正确有效的idea spring boot SSM整合 多模块项目环境搭建

8 由于是父工程删除src 右键delete

正确有效的idea spring boot SSM整合 多模块项目环境搭建

8 之后就是 common dao service web 等的创建 前三者选择Maven jar形式 而web 则需要Spring Initializr 

由于前三者创建一致 这里只介绍 springboot-common的创建

  common:在父工程上 右键 New 》Model

正确有效的idea spring boot SSM整合 多模块项目环境搭建

选择 Maven 点击next 注意Create from achetype 是没有勾选的

 

正确有效的idea spring boot SSM整合 多模块项目环境搭建

点击next

正确有效的idea spring boot SSM整合 多模块项目环境搭建

注意 Module name:框 需要于之前的Artifactld 保持一致 应为idea默认是驼峰式命名的 点击finish

正确有效的idea spring boot SSM整合 多模块项目环境搭建

 

这里特殊介绍下怎么去除与父工成的关联 在你选择的项目上右键找到Remove  Model 点击

正确有效的idea spring boot SSM整合 多模块项目环境搭建

之后就是dao domain service 相同的步骤如法炮制

 重点创建springboot-web  其实和第一个父项目基本一致 :父工程下右键New > Model

正确有效的idea spring boot SSM整合 多模块项目环境搭建

选择spring Initalizr 点击next 其他不要改动

正确有效的idea spring boot SSM整合 多模块项目环境搭建

package 写入com.czxy 点击next

正确有效的idea spring boot SSM整合 多模块项目环境搭建

版本选择 点击next

正确有效的idea spring boot SSM整合 多模块项目环境搭建

 

点击 finish

正确有效的idea spring boot SSM整合 多模块项目环境搭建

右下角出现 不去管它 后面步骤正确无伤大雅

正确有效的idea spring boot SSM整合 多模块项目环境搭建

在父项目的pom 中你会发现 其实 springboot-web 没有与父工程关联

正确有效的idea spring boot SSM整合 多模块项目环境搭建

 

所以我们进行如下步骤:

在springboot-web 下的pom **解掉当前<parent></parent>

正确有效的idea spring boot SSM整合 多模块项目环境搭建

从其他项目的pom下复制 <parent></parent> 到 springboot-web 下的pom

正确有效的idea spring boot SSM整合 多模块项目环境搭建

之后我们在修改父项目下的pom 引入springboot-web module

正确有效的idea spring boot SSM整合 多模块项目环境搭建
 

应为我们的项目是ssm项目 父项目下的pom 导入相关的启动器

<!-- spring springmvc 启动器 -->
 <dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-web</artifactId>
</dependency>
 <!-- jdbc启动器 -->
 <dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-jdbc</artifactId>
 </dependency>
 <!-- mybatis启动器 -->
 <dependency>
     <groupId>org.mybatis.spring.boot</groupId>
     <artifactId>mybatis-spring-boot-starter</artifactId>
     <version>${mybatis.starter.version}</version>
 </dependency>
 <!-- 通用Mapper启动器 -->
 <dependency>
     <groupId>tk.mybatis</groupId>
     <artifactId>mapper-spring-boot-starter</artifactId>
     <version>${mapper.starter.version}</version>
 </dependency>
 <!-- 分页助手启动器 -->
 <dependency>
     <groupId>com.github.pagehelper</groupId>
     <artifactId>pagehelper-spring-boot-starter</artifactId>
     <version>${pageHelper.starter.version}</version>
 </dependency>
 <!-- mysql驱动 -->
 <dependency>
     <groupId>mysql</groupId>
     <artifactId>mysql-connector-java</artifactId>
     <version>${mysql.version}</version>
 </dependency>
 <!-- Druid连接池 -->
 <dependency>
     <groupId>com.alibaba</groupId>
     <artifactId>druid-spring-boot-starter</artifactId>
     <version>${durid.starter.version}</version>
 </dependency>

我们这里 是用了Maven 的版本控制 事先 覆盖掉了原先的<properties>

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <java.version>1.8</java.version>
    <mybatis.starter.version>1.3.2</mybatis.starter.version>
    <mapper.starter.version>2.0.2</mapper.starter.version>
    <mysql.version>5.1.32</mysql.version>
    <pageHelper.starter.version>1.2.5</pageHelper.starter.version>
    <durid.starter.version>1.1.10</durid.starter.version>
</properties>

由于是多模块项目 相关之间也必须有依赖 这里

正确有效的idea spring boot SSM整合 多模块项目环境搭建

springboot-dao 下的pom

<dependency>
    <groupId>com.czxy</groupId>
    <artifactId>springboot-common</artifactId>
    <version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
    <groupId>com.czxy</groupId>
    <artifactId>springboot-domain</artifactId>
    <version>0.0.1-SNAPSHOT</version>
</dependency>

springboot-service:

<dependency>
    <groupId>com.czxy</groupId>
    <artifactId>springboot-dao</artifactId>
    <version>0.0.1-SNAPSHOT</version>
</dependency>

springboot-web:

<dependency>
    <groupId>com.czxy</groupId>
    <artifactId>springboot-service</artifactId>
    <version>0.0.1-SNAPSHOT</version>
</dependency>

相关快捷键:Alt+insert

正确有效的idea spring boot SSM整合 多模块项目环境搭建

 

由于父工程 和 springboot-web 都是选择spring Initalizr 创建 我们运行一直是选择 springboot-web 下的SpringbootWebApplication运行 

正确有效的idea spring boot SSM整合 多模块项目环境搭建

我们选择SpringbootWebApplication

正确有效的idea spring boot SSM整合 多模块项目环境搭建

运行前我们在springboot-web项目下的 application.properties 下配置 端口映射 数据库连接 druid连接池

#Tomcat
server.port=8088

#DB configuration
spring.datasource.driverClassName=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/bos_0903
spring.datasource.username=root
spring.datasource.password=root
#druid
#驱动
#spring.datasource.driver-class-name=com.mysql.jdbc.Driver
#初始化连接池大小
spring.datasource.druid.initial-size=1
#最小连接数
spring.datasource.druid.min-idle=1
#最大连接数
spring.datasource.druid.max-active=20
#获取连接时候验证,会影响性能
spring.datasource.druid.test-on-borrow=true

# mybatis
# mybatis.type-aliases-package=com.czxy.domain.base
# mybatis.mapper-locations=classpath:mappers/*.xml
#mapper
mapper.not-empty=false
mapper.identity=MYSQL

# httpclient
http.maxTotal=300
http.defaultMaxPerRoute=50
http.connectTimeout=1000
http.connectionRequestTimeout=500
http.socketTimeout=5000
http.staleConnectionCheckEnabled=true

正确有效的idea spring boot SSM整合 多模块项目环境搭建

并且在其resources 创建一个static 文件夹用来存储我们的页面

正确有效的idea spring boot SSM整合 多模块项目环境搭建

正确有效的idea spring boot SSM整合 多模块项目环境搭建

 

在static 下创建一个index.html

正确有效的idea spring boot SSM整合 多模块项目环境搭建

 我们运行项目 倒三角处点击

正确有效的idea spring boot SSM整合 多模块项目环境搭建

 

正确有效的idea spring boot SSM整合 多模块项目环境搭建

正常运行结果

在Google  火狐等浏览器输入

正确有效的idea spring boot SSM整合 多模块项目环境搭建

 跳转结果:

正确有效的idea spring boot SSM整合 多模块项目环境搭建

最后提出几个相关的运行错误:

正确有效的idea spring boot SSM整合 多模块项目环境搭建

这是由于找不到‘test’ 表 检查一下 :application.properties 应为大多数问题都是出自这里没有设置成功

正确有效的idea spring boot SSM整合 多模块项目环境搭建

 最后是:运行时 依赖错误Settings  > maven 设置一下仓库

正确有效的idea spring boot SSM整合 多模块项目环境搭建

相关标签: t'