Springboot創(chuàng)建子父工程過(guò)程圖解
這篇文章主要介紹了Springboot創(chuàng)建子父工程過(guò)程圖解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
1.創(chuàng)建子父工程
2.添加pom配置文件
2.1 父工程pom.xml
<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.demo</groupId> <artifactId>springboot</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>pom</packaging> <modules> <module>springboot-server</module> <module>springboot-common</module> <module>springboot-domain</module> <module>springboot-sdk</module> </modules> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <build.jdk.version>1.8</build.jdk.version> <spring.boot.version>1.5.9.RELEASE</spring.boot.version> <spring.version>4.3.13.RELEASE</spring.version> <slf4j.version>1.7.25</slf4j.version> <fastjson.version>1.2.8</fastjson.version> <commons.lang.version>3.1</commons.lang.version> <commons.io.version>2.5</commons.io.version> <commons.beanutils.version>1.9.3</commons.beanutils.version> <commons.codec.version>1.11</commons.codec.version> <guava.version>19.0</guava.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <version>${spring.boot.version}</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> <version>${spring.boot.version}</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>${spring.boot.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>${fastjson.version}</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>${commons.lang.version}</version> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>${commons.io.version}</version> </dependency> <dependency> <groupId>commons-beanutils</groupId> <artifactId>commons-beanutils</artifactId> <version>${commons.beanutils.version}</version> </dependency> <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version>${commons.codec.version}</version> </dependency> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>${guava.version}</version> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <version>${spring.boot.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>${slf4j.version}</version> </dependency> </dependencies> <distributionManagement> <repository> <id>nexus-releases</id> <name>Nexus Release Repository</name> <url>http://ip:9090/repository/releases/</url> </repository> <snapshotRepository> <id>nexus-snapshots</id> <name>Nexus Snapshot Repository</name> <url>http://ip:9090/repository/snapshots/</url> </snapshotRepository> </distributionManagement> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>${build.jdk.version}</source> <target>${build.jdk.version}</target> </configuration> </plugin> <!-- 使用方式命令: versions:set -DoldVersion=* -DnewVersion=1.0.1-SNAPSHOT -DprocessAllModules=true -DallowSnapshots=true --> <plugin> <groupId>org.sonarsource.scanner.maven</groupId> <artifactId>sonar-maven-plugin</artifactId> <version>3.2</version> </plugin> </plugins> </build> </project>
2.2 子工程springboot-server pom.xml:
<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> <parent> <groupId>com.demo</groupId> <artifactId>springboot</artifactId> <version>0.0.1-SNAPSHOT</version> </parent> <artifactId>springboot-server</artifactId> <name>springboot-server</name> <properties> <application.main.class>com.demo.Application</application.main.class> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> </dependency> <dependency> <groupId>commons-beanutils</groupId> <artifactId>commons-beanutils</artifactId> </dependency> <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> </dependency> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> </dependency> <dependency> <groupId>net.sf.ehcache</groupId> <artifactId>ehcache</artifactId> <version>2.10.5</version> </dependency> </dependencies> <build> <sourceDirectory>src/main/java</sourceDirectory> <resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> <includes> <include>*.properties</include> <include>*.yml</include> <include>*.xml</include> </includes> </resource> <resource> <directory>src/main/resources</directory> <filtering>false</filtering> <excludes> <exclude>scripts/*</exclude> <exclude>*.properties</exclude> <exclude>*.yml</exclude> <exclude>*.xml</exclude> </excludes> </resource> <!-- 收集運(yùn)行腳本 --> <resource> <directory>src/main/resources/scripts</directory> <targetPath>${project.build.directory}/bin</targetPath> <filtering>true</filtering> <includes> <include>*.sh</include> <include>*.bat</include> </includes> </resource> <!-- 收集配置文件 --> <resource> <directory>src/main/resources</directory> <targetPath>${project.build.directory}/conf</targetPath> <filtering>true</filtering> <includes> <include>*.properties</include> <include>*.yml</include> <include>*.xml</include> </includes> </resource> <!-- 收集手動(dòng)導(dǎo)入的jar包 --> <resource> <directory>lib</directory> <targetPath>${project.build.directory}/lib</targetPath> </resource> </resources> <plugins> <!-- 1.用于編譯的plugin --> <!-- <plugin> --> <!-- <groupId>org.apache.maven.plugins</groupId> --> <!-- <artifactId>maven-compiler-plugin</artifactId> --> <!-- <version>3.1</version> --> <!-- <configuration> --> <!-- <fork>true</fork> --> <!-- <source>1.8</source> --> <!-- <target>1.8</target> --> <!-- <encoding>UTF-8</encoding> --> <!-- </configuration> --> <!-- </plugin> --> <!-- 2.用于生成jar包的plugin --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>2.6</version> <configuration> <outputDirectory>${project.build.directory}/lib</outputDirectory> <archive> <manifest> <addClasspath>true</addClasspath> <classpathPrefix>lib/</classpathPrefix> </manifest> </archive> <excludes> <exclude>*.xml</exclude> <exclude>*.yml</exclude> <exclude>*.properties</exclude> </excludes> </configuration> </plugin> <!-- 3.用于拷貝maven依賴(lib)的plugin --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <executions> <execution> <id>copy-dependencies</id> <phase>package</phase> <goals> <goal>copy-dependencies</goal> </goals> <configuration> <outputDirectory>${project.build.directory}/lib</outputDirectory> </configuration> </execution> </executions> </plugin> <!-- 4.用于拷貝resource文件夾 的plugin --> <!-- 5.配置生成源代碼jar的plugin[這里的源代碼是指java文件,不是class文件] --> <plugin> <artifactId>maven-source-plugin</artifactId> <version>2.4</version> <configuration> <attach>true</attach> <!-- 配置源代碼jar文件的存放路徑 --> <outputDirectory>${project.build.directory}</outputDirectory> </configuration> <executions> <execution> <phase>compile</phase> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugin> <!-- 打包zip --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <executions> <execution> <id>dfrp-portal</id> <configuration> <archive> <manifest> <mainClass>${application.main.class}</mainClass> </manifest> </archive> <descriptors> <descriptor>src/main/resources/scripts/assembly.xml</descriptor> </descriptors> <!-- 將依賴jar包都包含在目標(biāo)jar中 --> <!-- <descriptorRefs> --> <!-- <descriptorRef>jar-with-dependencies</descriptorRef> --> <!-- </descriptorRefs> --> <finalName>${project.name}-${version}</finalName> </configuration> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin> </plugins> </build> </project>
3.App啟動(dòng)類
/** * Copyright (c) 2020, All Rights Reserved. * */ package com.demo; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.boot.Banner; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class Application { private static final Logger LOG = LoggerFactory.getLogger(Application.class); public static void main(String[] args) { SpringApplication app = new SpringApplication(Application.class); app.setBannerMode(Banner.Mode.OFF); app.setWebEnvironment(true); app.run(args); LOG.info("**************** Startup Success ****************"); } }
4.application.yml配置文件
version: ${project.version} server: port: 7070 session-timeout: 0 context-path: /
5.測(cè)試controller類
package com.demo.server.controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class TestController { @RequestMapping("/helloworld") public String hello(String name) { return "name"+name; } }
springboot子父項(xiàng)目啟動(dòng)成功。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Linux啟動(dòng)與停止spring boot工程的腳本示例
- eclipse springboot工程打war包方法及再Tomcat中運(yùn)行的方法
- 在spring-boot工程中添加spring mvc攔截器
- SpringBoot集成gRPC微服務(wù)工程搭建實(shí)踐的方法
- 詳解Spring Boot工程集成全局唯一ID生成器 UidGenerator的操作步驟
- springboot工程jar包部署到云服務(wù)器的方法
- Maven工程搭建spring boot+spring mvc+JPA的示例
- 使用IntelliJ IDEA 2017.2.5 x64中的Spring Initializr插件快速創(chuàng)建Spring Boot/Cloud工程(圖解)
- 詳解SpringBoot 使用Spring Initializr 快速構(gòu)建工程(官方推薦)
相關(guān)文章
Java輕量級(jí)權(quán)限認(rèn)證框架Sa-Token的使用
Sa-Token是一個(gè)輕量級(jí)Java權(quán)限認(rèn)證框架,本文就詳細(xì)的來(lái)介紹一下Java輕量級(jí)權(quán)限認(rèn)證框架Sa-Token的使用,主要解決:登錄認(rèn)證、權(quán)限認(rèn)證、Session會(huì)話、單點(diǎn)登錄、OAuth2.0、微服務(wù)網(wǎng)關(guān)鑒權(quán)等,感興趣的可以了解一下2022-03-03Spring通過(guò)配置文件和注解實(shí)現(xiàn)屬性賦值
這篇文章主要介紹了Spring通過(guò)配置文件和注解實(shí)現(xiàn)屬性賦值,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-04-04Java 如何使用JDBC連接數(shù)據(jù)庫(kù)
這篇文章主要介紹了Java 如何使用JDBC連接數(shù)據(jù)庫(kù),幫助大家更好的理解和學(xué)習(xí)使用Java,感興趣的朋友可以了解下2021-02-02springboot動(dòng)態(tài)調(diào)用實(shí)現(xiàn)類方式
這篇文章主要介紹了springboot動(dòng)態(tài)調(diào)用實(shí)現(xiàn)類方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11SpringMVC中Controller類數(shù)據(jù)響應(yīng)的方法
這篇文章主要介紹了SpringMVC中的數(shù)據(jù)響應(yīng)的問(wèn)題,主要來(lái)了解 Controller 類如何進(jìn)行數(shù)據(jù)響應(yīng)的,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下2021-07-07Java并發(fā)統(tǒng)計(jì)變量值偏差原因及解決方案
這篇文章主要介紹了Java并發(fā)統(tǒng)計(jì)變量值偏差原因及解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06Java Metrics系統(tǒng)性能監(jiān)控工具的使用詳解
Metrics是一個(gè)Java庫(kù),可以對(duì)系統(tǒng)進(jìn)行監(jiān)控,統(tǒng)計(jì)一些系統(tǒng)的性能指標(biāo)。本文就來(lái)和大家詳細(xì)聊聊這個(gè)工具的具體使用,希望對(duì)大家有所幫助2022-11-11