idea 整合 SpringBoot+MyBatis 聚合工程
1,建父工程test_demo:刪除父工程下的src檔案
然後next -> finish
(第一步也可以用spring initialize來代替maven建立,即直接建立spring initialize,然後不勾選任何模組,一直next,建立成功後,除了pom.xml,其他都刪除)
2,分別建子工程entity,service,dao,web
右擊父工程,如圖
點選Spring Initialize --> next -->(或者選擇maven,將會建立子模組,不過需要手動新增springboot依賴)
先建web(group屬性必須跟父模組完全一致,如com.test)
然後next
然後next–>finish
(通過Springboot初始化不能直接成為子模組,需要更改pom.xml,跟上面括號裡面直接在父工程中new-》module-》maven,得到的將直接是子模組,但不會自動匯入Springboot依賴)將demo_web 裡 pom.xml 的jar包依賴 剪下到 父工程的pom.xml中,因為後續web模組會繼承父模組的pom(也可以只剪下parent,再在web模組pom.xml中新建一個parent,把groupId和artifactId,version改成父工程對應的,成為父工程的子模組,這種通過spring initialize方法建立的module自帶packaging打包方式,需要刪除以及刪除打包外掛build裡面的plugin,因為繼承了父工程,打包方式為pom)
demo_web就建完了
之後建dao,service,entity
到這兒之後一直next->next->finish期間任何選項都不選
service,dao都如此,其中都將pom.xml中的 jar包依賴 刪掉,jar包依賴 只需在 父工程的pom.xml中有就可以
3,開啟父工程的pom.xml 新增
<packaging>pom</packaging>
並新增其子工程:
並新增mapper位置(以防後邊找不到mapper.xml)
<!-- mapper 配置位置 --> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> <filtering>false</filtering> </resource> </resources>
4,分別在dao,service,entity,web中加入父工程依賴:如下圖
5,分別加入依賴:dao層依賴entity(如下圖); service依賴dao,entity; web依賴service,entity;entity不需要
6,在demo_web中測試搭建是否成功
在demo_web的com.test.demo_web包結構下建立一個包controller(如圖)
7,新增application.properties(配置資料來源,.xml檔案,配置jsp)
spring.datasource.url=jdbc:mysql://localhost:3306/test1
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
mybatis.mapper-locations = classpath:mapper/*.xml
spring.mvc.view.prefix=/WEB-INF/views/
spring.mvc.view.suffix=.jsp
把子模組中的packaging刪除,只保留父模組pom中的packaging,子模組最好只保留父模組和依賴模組
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.imooc</groupId>
<artifactId>imooc-videos-dev</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>imooc-videos-dev-mini-api</artifactId>
<dependencies>
<dependency>
<groupId>com.imooc</groupId>
<artifactId>imooc-videos-dev-service</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
8,在SpringBoot的入口加上exclude= {DataSourceAutoConfiguration.class}(測試時)
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
public class DemoWebApplication {
public static void main(String[] args) {
SpringApplication.run(DemoWebApplication.class, args);
}
}
測試結果:
以上就是使用springboot搭建簡單的聚合專案