最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解Maven 搭建spring boot多模塊項(xiàng)目(附源碼)

 更新時(shí)間:2017年09月06日 16:28:52   作者:tomato  
這篇文章主要介紹了詳解Maven 搭建spring boot多模塊項(xiàng)目(附源碼),具有一定的參考價(jià)值,有興趣的可以了解一下

本文介紹了Maven 搭建spring boot多模塊項(xiàng)目,分享給大家,具體如下:

備注:所有項(xiàng)目都在idea中創(chuàng)建

1.idea創(chuàng)建maven項(xiàng)目

  • 1-1: 刪除src,target目錄,只保留pom.xml
  • 1-2: 根目錄pom.xml可被子模塊繼承,因此項(xiàng)目只是demo,未考慮太多性能問(wèn)題,所以將諸多依賴。都寫在根級(jí)`pom.xml`,子模塊只需繼承就可以使用。
  • 1-3: 根級(jí)pom.xml文件在附錄1
  • 1-4: 依賴模塊 mybatis spring-boot相關(guān)模塊

2.創(chuàng)建子模塊(module)

  • 2-1: file > new > module 輸入 model
  • 2-2: file > new > module 輸入 dao
  • 2-3: file > new > module 輸入 service
  • 2-4: file > new > module 輸入 webapi

3.修改子模塊pom.xml配置

<?xml version="1.0" encoding="UTF-8"?>
<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">
  <parent>
    <artifactId>parent</artifactId>
    <groupId>com.luyh.projectv1</groupId>
    <version>1.0-SNAPSHOT</version>
    <relativePath>../pom.xml</relativePath>
  </parent>
  <modelVersion>4.0.0</modelVersion>

  <artifactId>projectv1-model</artifactId>
</project>

注意:<font color="red"><relativePath>../pom.xml</relativePath></font>此段必須加上,用來(lái)繼承父模塊

至此,項(xiàng)目的基礎(chǔ)結(jié)構(gòu)搭建完畢了,接下來(lái)可以來(lái)擼代碼了,哦哦稍等,我先介紹下各個(gè)子module的工作職責(zé)吧

4.子模塊在項(xiàng)目中擔(dān)任的'工作職責(zé)'

  • model 此模塊存放著所有的實(shí)體類
  • dao 此模塊存放著數(shù)據(jù)交互的具體實(shí)現(xiàn),供service調(diào)用
  • service 此模塊存放業(yè)務(wù)代碼實(shí)現(xiàn),供API層調(diào)用
  • webapi 此模塊也可以不出現(xiàn)在項(xiàng)目中,為了寫demo故將webapi層放進(jìn)來(lái)

5.model層實(shí)體類編寫

  • 建立包名 com.luyh.projectv1.model
  • 建實(shí)體類 Member.java 具體代碼請(qǐng)clone我的git,git地址在最下方

6.dao層數(shù)據(jù)庫(kù)操作層

  • 建立com.luyh.projectv1.dao.config,該包內(nèi)只有2個(gè)讓spring boot自動(dòng)加載配置的配置java類
  • 建立MemberMapper.java 具體內(nèi)容看代碼
  • 在resources/mybatis 下建立MemberMapper.xml
  • 建立IMember.java
  • 建立Member.java 實(shí)現(xiàn)Imember接口
  • 建立resources/application.properties文件用于配置數(shù)據(jù)庫(kù)連接

7. service 編寫業(yè)務(wù)邏輯

  • 建立 com.luyh.projectv1.service 包
  • 建立IMemberService.java接口
  • 建立MemberService.java實(shí)現(xiàn)類
  • MemberService.java 類中自動(dòng)注入DaoMember 并調(diào)用其方法獲取數(shù)據(jù)

8. webapi 編寫webapi獲取json數(shù)據(jù)

  • 建立Application.java 啟動(dòng)應(yīng)用
  • 建立 com.luyh.projectv1.webapi.controller.MemberController.java 寫個(gè)rest風(fēng)格Controller
  • 啟動(dòng)

9.sql文件 請(qǐng)自行導(dǎo)入mysql數(shù)據(jù) sql文件

這里是項(xiàng)目地址,點(diǎn)擊下載

附錄1

<?xml version="1.0" encoding="UTF-8"?>
<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>

  <groupId>com.luyh.projectv1</groupId>
  <artifactId>parent</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>pom</packaging>
  <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.3.3.RELEASE</version>
  </parent>
  <modules>

    <module>model</module>
    <module>dao</module>
    <module>service</module>
    <module>webapi</module>
  </modules>

  <!--申明依賴關(guān)系-->
  <dependencies>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-jdbc</artifactId>
    </dependency>

    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis-spring</artifactId>
      <version>1.2.2</version>
    </dependency>
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis</artifactId>
      <version>3.2.8</version>
    </dependency>

    <dependency>
      <groupId>org.apache.tomcat</groupId>
      <artifactId>tomcat-jdbc</artifactId>
    </dependency>

    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
    </dependency>
  </dependencies>

  <!--設(shè)置maven倉(cāng)庫(kù)-->

  <repositories>
    <repository>
      <id>spring-releases</id>
      <url>https://repo.spring.io/libs-release</url>
    </repository>
  </repositories>
  <pluginRepositories>
    <pluginRepository>
      <id>spring-releases</id>
      <url>https://repo.spring.io/libs-release</url>
    </pluginRepository>
  </pluginRepositories>


</project>

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Spring通過(guò)配置文件管理Bean對(duì)象的方法

    Spring通過(guò)配置文件管理Bean對(duì)象的方法

    這篇文章主要介紹了Spring通過(guò)配置文件管理Bean對(duì)象的相關(guān)知識(shí),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • 詳解Spring Cloud Zuul網(wǎng)關(guān)修改為短連接方法

    詳解Spring Cloud Zuul網(wǎng)關(guān)修改為短連接方法

    本文主要介紹了詳解Spring Cloud Zuul網(wǎng)關(guān)修改為短連接方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • springboot @Controller和@RestController的區(qū)別及應(yīng)用詳解

    springboot @Controller和@RestController的區(qū)別及應(yīng)用詳解

    這篇文章主要介紹了springboot @Controller和@RestController的區(qū)別及應(yīng)用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Java Web項(xiàng)目中實(shí)現(xiàn)文件下載功能的實(shí)例教程

    Java Web項(xiàng)目中實(shí)現(xiàn)文件下載功能的實(shí)例教程

    這篇文章主要介紹了Java Web項(xiàng)目中實(shí)現(xiàn)文件下載功能的實(shí)例教程,分別講解了通過(guò)超鏈接實(shí)現(xiàn)下載以及通過(guò)Servlet程序?qū)崿F(xiàn)下載的方式,需要的朋友可以參考下
    2016-05-05
  • JAVA使用TreeMap對(duì)字符串進(jìn)行排序

    JAVA使用TreeMap對(duì)字符串進(jìn)行排序

    這篇文章主要介紹了JAVA使用TreeMap對(duì)字符串進(jìn)行排序,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • SpringBoot+Redis執(zhí)行l(wèi)ua腳本的5種方式總結(jié)

    SpringBoot+Redis執(zhí)行l(wèi)ua腳本的5種方式總結(jié)

    Lua是一種快速、輕量級(jí)的腳本語(yǔ)言,廣泛應(yīng)用于各種領(lǐng)域,包括數(shù)據(jù)庫(kù),Redis作為一個(gè)內(nèi)嵌Lua解釋器的NoSQL數(shù)據(jù)庫(kù),允許通過(guò)Lua腳本在服務(wù)器端執(zhí)行一些復(fù)雜的操作,本文給大家介紹了使用SpringBoot Redis執(zhí)行l(wèi)ua腳本的五種方式,需要的朋友可以參考下
    2023-11-11
  • Java中Scanner類基礎(chǔ)使用、可能遇到的問(wèn)題及注意事項(xiàng)

    Java中Scanner類基礎(chǔ)使用、可能遇到的問(wèn)題及注意事項(xiàng)

    Scanner類是一個(gè)用于Scanner指的是java.util包下的Scanner類,可以接收控制臺(tái)輸入的數(shù)據(jù),這篇文章主要介紹了Java中Scanner類基礎(chǔ)使用、可能遇到的問(wèn)題及注意事項(xiàng)的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-04-04
  • Java中的ConcurrentHashMap集合源碼解析

    Java中的ConcurrentHashMap集合源碼解析

    這篇文章主要介紹了Java中的ConcurrentHashMap集合源碼解析,ConcurrentHashMap底層容器和HashMap相同,同樣是Node數(shù)組+鏈表+紅黑樹,不同的是在原來(lái)的基礎(chǔ)之上使用了Synchronized+CAS來(lái)保證線程安全,下面我們來(lái)進(jìn)行源碼分析,需要的朋友可以參考下
    2023-11-11
  • 一文帶你了解FastExcel的使用

    一文帶你了解FastExcel的使用

    我們知道?EasyExcel?在作者從阿里離職之后就停止維護(hù)了,但在前兩周?EasyExcel?原作者推出了他的升級(jí)版框架?FastExcel,下面小編就來(lái)和大家聊聊FastExcel的具體使用吧
    2024-12-12
  • 詳解Junit 測(cè)試之 Spring Test

    詳解Junit 測(cè)試之 Spring Test

    本篇文章主要介紹了Junit 測(cè)試之 Spring Test,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-10-10

最新評(píng)論

南丹县| 姜堰市| 新郑市| 杂多县| 石城县| 齐河县| 封开县| 卢龙县| 松原市| 东乌珠穆沁旗| 贵定县| 兴隆县| 维西| 新竹市| 阜城县| 龙胜| 抚远县| 莱西市| 台山市| 柘荣县| 宜黄县| 庐江县| 淮安市| 民丰县| 千阳县| 绥宁县| 闽清县| 龙南县| 满城县| 海原县| 阳信县| 前郭尔| 隆德县| 永修县| 霍城县| 云安县| 兰西县| 红河县| 宜章县| 张家川| 安福县|