国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - 淺談springboot多模塊(modules)開發

淺談springboot多模塊(modules)開發

2020-12-29 14:50爆米花機槍手 Java教程

這篇文章主要介紹了淺談springboot多模塊(modules)開發,詳細的介紹了springboot多模塊的實現,有興趣的可以了解一下

為何模塊開發

先舉個栗子,同一張數據表,可能要在多個項目中或功能中使用,所以就有可能在每個模塊都要搞一個mybatis去配置。如果一開始規定說這張表一定不可以改字段屬性,那么沒毛病。但是事實上, 一張表從項目開始到結束,不知道被改了多少遍,所以,你有可能在多個項目中去改mybatis改到吐血!

在舉一個栗子,一個web服務里包含了多個功能模塊,比如其中一個功能可能會消耗大量資源和時間,當用戶調用這個功能的時候,可能會影響到其他功能的正常使用,這個時候,如果把各個功能模塊分出來單獨部署,然后通過http請求去調用,至于性能和響應速度,再單獨去優化,將會非常爽!這也有利于將來的

分布式集群

根據當前的業務需求,我需要重構現有的web功能,多模塊化,然后單獨部署,基本架構示意圖如下

淺談springboot多模塊(modules)開發

怎樣分模塊

注意:下面配置的步驟是基于intellij idea 2016.3.4(64),不保證eclipse能成功。如果你還在使用eclipse,建議你刪掉它,使用idea吧

1、創建maven主項目例如,springbootmodules,并刪掉src文件
2、右鍵項目分別創建三個module,dao,service1,service2
3、將之前項目用到的依賴寫在主項目的pom里,這里要注意
4、dao層主要提供實體類,curd接口和xml映射文件
5、一定要在service1和service2配置數據庫的相關信息,并添加spring的相關配置
6、編寫接口測試

相關代碼

父項目pom

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
<?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.boot.lean</groupid>
  <artifactid>springbootquick</artifactid>
  <version>1.0-snapshot</version>
  <modules>
    <module>dao</module>
    <module>service1</module>
    <module>service2</module>
  </modules>
 
 
  <packaging>pom</packaging>
  <name>springbootquick</name>
  <parent>
    <groupid>org.springframework.boot</groupid>
    <artifactid>spring-boot-starter-parent</artifactid>
    <version>1.5.1.release</version>
    <relativepath/> <!-- lookup parent from repository -->
  </parent>
 
  <properties>
 
    <project.build.sourceencoding>utf-8</project.build.sourceencoding>
    <shadedclassifier>bin</shadedclassifier>
    <java.version>1.8</java.version>
 
 
    <mybatis-spring-boot>1.2.0</mybatis-spring-boot>
    <mysql-connector>5.1.39</mysql-connector>
  </properties>
 
 
  <dependencies>
 
    <!-- spring boot web 依賴 -->
    <dependency>
      <groupid>org.springframework.boot</groupid>
      <artifactid>spring-boot-starter-web</artifactid>
    </dependency>
 
    <!-- spring boot test 依賴 -->
    <dependency>
      <groupid>org.springframework.boot</groupid>
      <artifactid>spring-boot-starter-test</artifactid>
      <scope>test</scope>
    </dependency>
 
    <!-- spring boot mybatis 依賴 -->
    <dependency>
      <groupid>org.mybatis.spring.boot</groupid>
      <artifactid>mybatis-spring-boot-starter</artifactid>
      <version>${mybatis-spring-boot}</version>
    </dependency>
 
    <!-- mysql 連接驅動依賴 -->
    <dependency>
      <groupid>mysql</groupid>
      <artifactid>mysql-connector-java</artifactid>
      <version>${mysql-connector}</version>
    </dependency>
 
    <!-- junit -->
    <dependency>
      <groupid>junit</groupid>
      <artifactid>junit</artifactid>
      <version>4.12</version>
    </dependency>
    <dependency>
      <groupid>org.apache.commons</groupid>
      <artifactid>commons-pool2</artifactid>
      <version>2.4.2</version>
    </dependency>
    <dependency>
      <groupid>commons-beanutils</groupid>
      <artifactid>commons-beanutils</artifactid>
      <version>1.9.2</version>
    </dependency>
 
    <dependency>
      <groupid>commons-logging</groupid>
      <artifactid>commons-logging</artifactid>
      <version>1.2</version>
    </dependency>
 
    <dependency>
      <groupid>commons-dbcp</groupid>
      <artifactid>commons-dbcp</artifactid>
      <version>1.4</version>
    </dependency>
 
    <dependency>
      <groupid>net.sf.json-lib</groupid>
      <artifactid>json-lib</artifactid>
      <version>2.4</version>
      <classifier>jdk15</classifier>
    </dependency>
 
  </dependencies>
 
 
  <build>
    <plugins>
 
 
      <plugin>
        <groupid>org.apache.maven.plugins</groupid>
        <artifactid>maven-compiler-plugin</artifactid>
        <version>3.1</version>
        <configuration>
          <source>${java.version}</source>
          <target>${java.version}</target>
        </configuration>
      </plugin>
 
 
      <plugin>
        <groupid>org.apache.maven.plugins</groupid>
        <artifactid>maven-surefire-plugin</artifactid>
        <version>2.19.1</version>
        <configuration>
          <skiptests>true</skiptests>  <!--默認關掉單元測試 -->
        </configuration>
      </plugin>
 
      <plugin>
        <groupid>org.mybatis.generator</groupid>
        <artifactid>mybatis-generator-maven-plugin</artifactid>
        <version>1.3.2</version>
        <configuration>
          <verbose>true</verbose>
          <overwrite>true</overwrite>
        </configuration>
        <dependencies>
          <dependency>
            <groupid>mysql</groupid>
            <artifactid>mysql-connector-java</artifactid>
            <version>5.1.30</version>
          </dependency>
        </dependencies>
      </plugin>
    </plugins>
  </build>
</project>

dao模塊的pom(里面配置了mybatis的逆向功能插件)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?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>springbootquick</artifactid>
    <groupid>com.boot.lean</groupid>
    <version>1.0-snapshot</version>
  </parent>
  <modelversion>4.0.0</modelversion>
 
  <artifactid>dao</artifactid>
  <packaging>jar</packaging>
 
  <build>
  <!-- 一定要聲明如下配置-->
    <resources>
      <resource>
        <directory>src/main/java</directory>
        <includes>
          <include>**/*.xml</include>
        </includes>
      </resource>
      <resource>
        <directory>src/main/resources</directory>
      </resource>
    </resources>
  </build>
</project>

service1和service2的pom一樣

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?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>springbootquick</artifactid>
    <groupid>com.boot.lean</groupid>
    <version>1.0-snapshot</version>
  </parent>
  <modelversion>4.0.0</modelversion>
 
  <artifactid>service1</artifactid>
  <packaging>jar</packaging>
  <dependencies>
    <dependency>
      <groupid>com.boot.lean</groupid>
      <artifactid>dao</artifactid>
      <version>1.0-snapshot</version>
    </dependency>
  </dependencies>
<build>
    <plugins>
      <plugin>
        <groupid>org.springframework.boot</groupid>
        <artifactid>spring-boot-maven-plugin</artifactid>
      </plugin>
    </plugins>
  </build>
</project>

需要注意的是,service模塊里我用的是注解配置,如圖所示

結構示意圖

淺談springboot多模塊(modules)開發

注意配置文件里的端口號

打包測試

在父項目下執行maven命令

?
1
mvn package

service1和service2目錄下分別會產生target文件,里面包含可執行jar包,分別執行

?
1
2
java -jar service1-1.0-snapshot
java -jar service2-1.0-snapshot

如果一切順利的話,你可以得出下面的操作結果

淺談springboot多模塊(modules)開發

注意端口號哦

有什么問題,自行解決,然后你會發現,跨過這個坑,還有無數個坑在等你~

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:http://blog.csdn.net/qqhjqs/article/details/68941934

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 天天影视色香欲 | 婷婷色av| 欧美综合一区二区三区 | 国产成人精品电影 | 亚洲一区二区三区在线免费观看 | 在线观看亚洲一区二区三区 | 国产精品美女久久久久久久网站 | 午夜久久久久久久久久一区二区 | 另类视频区 | 久久久久久久久99精品 | 蜜桃免费一区二区三区 | 99久久国产露脸国语对白 | 亚洲精品国产二区 | 亚洲aaa在线观看 | 亚洲精品夜夜夜 | 国产欧美日韩精品一区 | 成人激情视频 | 天天色av | 日本免费在线 | 欧美精品v国产精品v日韩精品 | 久久精品一区二区三区中文字幕 | 午夜视频在线网站 | 91电影国产 | 亚洲第一视频 | 羞羞网站 | 凹凸国产成人精品视频免费 | 亚洲午夜av久久乱码 | 成人在线不卡 | 自拍偷拍 国产 | 日韩视频在线免费观看 | 韩日av片 | 成人精品久久久 | 日韩精品久久久久久 | 91精品久久| 国产日韩视频 | 99riav在线| 欧美成人高清视频 | 国产精品一二区 | 久久久久99精品国产片 | av在线成人 | 欧美午夜影院 |