Java技術分享:SpringBoot多模組開發
在Javaweb專案開發中為了便於後期的維護,我們一般會進行分層開發,常見的就是分為model(域模型層)、dao(資料庫訪問層)、service(業務邏輯層)、controller(控制器層)、web(表現層),這樣分層之後,各個層之間的職責會比較明確,後期維護起來也相對比較容易。
前面我們開發都是在一個模組中,把不同的層以包來區分,如下:
1、建立SpringBoot專案
結構為:
程式碼分別是:
public class User {
private String username;
private String password;
private String realname;
...省略get\set 構造方法
}
@Repository
public class UserDAO {
public List<User> selectAllUsers(){
return Arrays.asList(new User("zhangsan","111","張三"),
new User("lisi","111","李四"),
new User("wangwu","111","王五"));
}
}
@Service
public class UserService {
@Resource
private UserDAO userDAO;
public List<User> findAllUsers(){
return userDAO.selectAllUsers();
}
}
@Controller
@RequestMapping("/user")
public class UserController {
@Resource
private UserService userService;
@RequestMapping("/list")
@ResponseBody
public String list(){
List<User> allUsers = userService.findAllUsers();
StringBuilder stringBuilder = new StringBuilder();
for(User user :allUsers){
stringBuilder.append("<p>姓名:");
stringBuilder.append(user.getRealname());
stringBuilder.append("</p>");
}
return stringBuilder.toString();
}
}
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
啟動專案,測試
多模組開發:
隨著專案越來越複雜,每個層的規模也逐漸增大,在一個模組中進行開發,會給測試和維護帶來不便,對於大型專案來說,一般會將每個層放到自己的模組中,然後每個層建立聯絡,單獨維護。
下面我們將會把前面的單模組專案重構為多模組專案:
專案分為4個模組
controller
service
dao
model
模組間依賴關係是
controller依賴service和model
service依賴dao和model
dao依賴model
重構多模組專案
1、首先選擇專案的pom.xml,將打包方式改為pom
<packaging>pom</packaging>
2、新建model模組:
專案右鍵——>New——>Module——>選擇maven ——> Next
輸入模組名稱model ——> Next ——> Finish
專案的pom.xml中會出現:
<modules>
<module>model</module>
</modules>
這就是模組建立完成了
然後將原來專案中model的包整個複製到model模組的java目錄下:
3、新建dao模組,過程和前面類似
新建完成後,程式碼會報錯,因為找不到User類,原因是dao模組還沒有新增model模組的依賴
新增依賴,在dao模組的pom.xml中新增
<dependencies>
<dependency>
<groupId>com.qianfeng.springboot</groupId>
<version>0.0.1-SNAPSHOT</version>
<artifactId>model</artifactId>
</dependency>
</dependencies>
4、再新增service模組
新增依賴:
<dependencies>
<dependency>
<groupId>com.qianfeng.springboot</groupId>
<artifactId>dao</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.qianfeng.springboot</groupId>
<artifactId>model</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
5、新增controller模組
新增依賴:
<dependencies>
<dependency>
<groupId>com.qianfeng.springboot</groupId>
<artifactId>service</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.qianfeng.springboot</groupId>
<artifactId>model</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
然後把原來專案的DemoApplication類複製到controller模組java目錄下的基礎包下,本例是com.qianfeng.springboot
6、點選Build Project 編譯專案,然後啟動程式進行測試,如果能成功啟動還能看到原來的執行效果,那麼專案多模組的重構就完成了。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31548651/viewspace-2771623/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Java Web開發技術JavaWeb
- Yaf多模組開發
- struts多模組開發
- iOS開發與前端技術分享【成都站】iOS前端
- 做Java開發需要哪些技術?Java
- gradle多模組開發Gradle
- IOS技術分享| iOS快速生成開發文件(二)iOS
- IOS技術分享| iOS快速生成開發文件(一)iOS
- Java開發之掌握JSP技術JavaJS
- 自學Java開發技術靠譜嗎?Java
- 技術分享 | 雲原生多模型 NoSQL 概述模型SQL
- Java技術分享之變數命名Java變數
- Java技術分享:NIO實戰教程!Java
- Java技術分享:Java基本資料型別Java資料型別
- Java技術分享:Java的執行機制Java
- 【華為雲技術分享】物聯網常用開發板
- java底層鏈遊系統開發技術功能(成熟技術)Java
- Springboot 多模組 jspSpring BootJS
- springboot模組化開發專案搭建Spring Boot
- Java技術分享:小白如何入門Mybatis?JavaMyBatis
- 技術大牛分享:JAVA學習路線Java
- 多商家商城系統模式開發技術方案模式
- Android技術分享| 視訊通話開發流程(一)Android
- Android技術分享| 視訊通話開發流程(二)Android
- 視覺化佈局模組開發分享視覺化
- springboot-多模組構建Spring Boot
- Web開發技術選型之Java與PHPWebJavaPHP
- struts2:多模組多配置檔案開發
- 併發技術2:多協程
- laravel 多模組模式下進行開發Laravel模式
- web前端技術分享:前端開發與後端開發的區別是什麼?Web前端後端
- 如何用java技術快速開發web service專案JavaWeb
- 區塊鏈技術交易系統開發Token多幣種錢包開發區塊鏈
- Springboot建立maven多模組專案Spring BootMaven
- 教你springboot maven多模組如何部署Spring BootMaven
- 阿里面試官的分享Java面試中需要準備哪些多執行緒併發的技術要點阿里面試Java執行緒
- Web前端技術分享:全棧工程師常用的開發工具Web前端全棧工程師
- 開發技術分享:美團R語言資料運營實戰!R語言