溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

spring boot多模塊項(xiàng)目怎么利用Maven進(jìn)行搭建

發(fā)布時(shí)間:2020-12-04 15:44:01 來(lái)源:億速云 閱讀:114 作者:Leah 欄目:編程語(yǔ)言

今天就跟大家聊聊有關(guān)spring boot多模塊項(xiàng)目怎么利用Maven進(jìn)行搭建,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

備注:所有項(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)題,所以將諸多依賴(lài)。都寫(xiě)在根級(jí)`pom.xml`,子模塊只需繼承就可以使用。
  • 1-3: 根級(jí)pom.xml文件在附錄1
  • 1-4: 依賴(lài)模塊 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配置

<&#63;xml version="1.0" encoding="UTF-8"&#63;>
<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í)體類(lèi)
  • dao 此模塊存放著數(shù)據(jù)交互的具體實(shí)現(xiàn),供service調(diào)用
  • service 此模塊存放業(yè)務(wù)代碼實(shí)現(xiàn),供API層調(diào)用
  • webapi 此模塊也可以不出現(xiàn)在項(xiàng)目中,為了寫(xiě)demo故將webapi層放進(jìn)來(lái)

5.model層實(shí)體類(lèi)編寫(xiě)

  • 建立包名 com.luyh.projectv1.model
  • 建實(shí)體類(lèi) 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類(lèi)
  • 建立MemberMapper.java 具體內(nèi)容看代碼
  • 在resources/mybatis 下建立MemberMapper.xml
  • 建立IMember.java
  • 建立Member.java 實(shí)現(xiàn)Imember接口
  • 建立resources/application.properties文件用于配置數(shù)據(jù)庫(kù)連接

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

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

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

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

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

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

附錄1

<&#63;xml version="1.0" encoding="UTF-8"&#63;>
<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>

  <!--申明依賴(lài)關(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>

看完上述內(nèi)容,你們對(duì)spring boot多模塊項(xiàng)目怎么利用Maven進(jìn)行搭建有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI