微服务基础模块搭建过程
生活随笔
收集整理的這篇文章主要介紹了
微服务基础模块搭建过程
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一?項目基本模板結構
sdgt_parent:根目錄,管理子模塊。
?? ?common:公共模塊父節點
?? ??? ?common-util:工具類模塊,所有模塊都可以依賴于它
?? ??? ?service-util:service服務的工具包,包含 service服務的公共配置類,所有 service 模塊依賴于它
?? ?model:實體類模塊
?? ?service:api 接口服務父節點
二?構建父工程(sdgt_parent)
1 該工程是?Spring?Boot?項目
2 它對應的 pom?配置如下
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><modules><module>common</module><module>model</module><module>service</module></modules><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.2.1.RELEASE</version> <!-- 用該版本 --><relativePath/> </parent><!-- 項目坐標 --><groupId>com.baiyee</groupId><artifactId>sdgt_parent</artifactId><packaging>pom</packaging><version>0.0.1-SNAPSHOT</version><name>sdgt_parent</name><description>Demo project for Spring Boot</description><!-- 版本屬性 --><properties><java.version>1.8</java.version><cloud.version>Hoxton.RELEASE</cloud.version><alibaba.version>2.2.0.RELEASE</alibaba.version><mybatis-plus.version>3.3.1</mybatis-plus.version><mysql.version>5.1.46</mysql.version><swagger.version>2.7.0</swagger.version><jwt.version>0.7.0</jwt.version><fastjson.version>1.2.29</fastjson.version><httpclient.version>4.5.1</httpclient.version><easyexcel.version>2.2.0-beta2</easyexcel.version><aliyun.version>4.1.1</aliyun.version><oss.version>3.9.1</oss.version><jodatime.version>2.10.1</jodatime.version></properties><!-- 配置 dependencyManagement 鎖定依賴的版本 --><dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${cloud.version}</version><type>pom</type><scope>import</scope></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>${alibaba.version}</version><type>pom</type><scope>import</scope></dependency><!-- mybatis-plus 持久層--><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>${mybatis-plus.version}</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>${mysql.version}</version></dependency><!-- swagger --><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>${swagger.version}</version></dependency><!-- swagger ui--><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger-ui</artifactId><version>${swagger.version}</version></dependency><dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt</artifactId><version>${jwt.version}</version></dependency><dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId><version>${httpclient.version}</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>${fastjson.version}</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>${easyexcel.version}</version></dependency><dependency><groupId>com.aliyun</groupId><artifactId>aliyun-java-sdk-core</artifactId><version>${aliyun.version}</version></dependency><dependency><groupId>com.aliyun.oss</groupId><artifactId>aliyun-sdk-oss</artifactId><version>${oss.version}</version></dependency><!-- 日期時間工具 --><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId><version>${jodatime.version}</version></dependency></dependencies></dependencyManagement><!-- 項目打包時會將 java 錄中的 *.xml 文件也進行打包 --><build><resources><resource><directory>src/main/java</directory><includes><include>**/*.xml</include></includes><filtering>false</filtering></resource></resources></build> </project>三?搭建 common 父模塊
1?該項目是?maven?項目
2?pom 文件如下
<?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>sdgt_parent</artifactId><groupId>com.baiyee</groupId><version>0.0.1-SNAPSHOT</version></parent><modelVersion>4.0.0</modelVersion><!-- 該項目坐標 --><artifactId>common</artifactId><packaging>pom</packaging><!-- 該項目的子模塊 --><modules><module>common_util</module><module>service_util</module></modules><!-- 該項目依賴 --><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><scope>provided</scope></dependency><!-- mybatis-plus --><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><scope>provided</scope></dependency><!-- lombok 用來簡化實體類:需要安裝 lombok 插件 --><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency><!-- swagger --><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId></dependency><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger-ui</artifactId></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId></dependency></dependencies> </project>四?搭建 common-util 模塊
1?該項目是?maven?項目
2?對應的 pom?文件
<?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>common</artifactId><groupId>com.baiyee</groupId><version>0.0.1-SNAPSHOT</version></parent><modelVersion>4.0.0</modelVersion><!-- 該項目坐標 --><artifactId>common_util</artifactId><!-- 該項目依賴 --><dependencies><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId></dependency><dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt</artifactId></dependency><dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId></dependency></dependencies> </project> 3?一些必要的公共工具類| SdgtException | 自定義全局異常 |
| Result | API統一返回結果封裝類 |
| ResultCodeEnum | API統一返回結果狀態信息 |
| MD5 | MD5加密工具類 |
五?搭建 service-util 模塊
1?該模塊是?maven?項目
2?對應的?pom?文件
<?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>common</artifactId><groupId>com.baiyee</groupId><version>0.0.1-SNAPSHOT</version></parent><modelVersion>4.0.0</modelVersion><!-- 該項目坐標 --><artifactId>service_util</artifactId><!-- 項目依賴 --><dependencies><dependency><groupId>com.baiyee</groupId><artifactId>common_util</artifactId><version>0.0.1-SNAPSHOT</version></dependency><!-- redis --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency><!-- spring2.X 集成 redis 所需 common-pool2 --><dependency><groupId>org.apache.commons</groupId><artifactId>commons-pool2</artifactId><version>2.6.0</version></dependency></dependencies> </project>六?搭建 model 模塊
1?該模塊是?maven?項目
2?對應的?pom?文件
<?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>sdgt_parent</artifactId><groupId>com.baiyee</groupId><version>0.0.1-SNAPSHOT</version></parent><modelVersion>4.0.0</modelVersion><!-- 該項目坐標 --><artifactId>model</artifactId><!-- 依賴 --><dependencies><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency><!--mybatis-plus--><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><scope>provided</scope></dependency><!--swagger--><dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><scope>provided</scope></dependency><dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><scope>provided</scope></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><scope>provided</scope></dependency></dependencies> </project>七?搭建service父模塊
1?該模塊是?maven?項目
2?對應的?pom?文件
<?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>sdgt_parent</artifactId><groupId>com.baiyee</groupId><version>0.0.1-SNAPSHOT</version></parent><modelVersion>4.0.0</modelVersion><artifactId>service</artifactId><packaging>pom</packaging><modules><module>service_hosp</module></modules><dependencies><dependency><groupId>com.baiyee</groupId><artifactId>model</artifactId><version>0.0.1-SNAPSHOT</version></dependency><dependency><groupId>com.baiyee</groupId><artifactId>service_util</artifactId><version>0.0.1-SNAPSHOT</version></dependency><!-- web --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!-- mybatis-plus --><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId></dependency><!-- mysql --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency><!-- 開發者工具 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><optional>true</optional></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins><resources><resource><directory>src/main/java</directory><includes><include>**/*.yml</include><include>**/*.properties</include><include>**/*.xml</include></includes><filtering>false</filtering></resource><resource><directory>src/main/resources</directory><includes><include>**/*.yml</include><include>**/*.properties</include><include>**/*.xml</include></includes><filtering>false</filtering></resource></resources></build> </project>總結
以上是生活随笔為你收集整理的微服务基础模块搭建过程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VB一款笔记本电脑电池显示状态信息工具
- 下一篇: 华为OLT上配置单LAN口SFU上网业务