创建springboot的聚合工程(一)
比起传统复杂的单体工程,使用Maven的多模块配置,可以帮助项目划分模块,鼓励重用,防止POM变得过于庞大,方便某个模块的构建,而不用每次都构建整个项目,并且使得针对某个模块的特殊控制更为方便。接下来,本文将重点阐述SpringBoot在Maven环境的多模块构建过程。
第一步:创建父工程
使用spring Tool Suite的童鞋可以直接new一个spring starter project;使用idea和eclipse童鞋可以通过插件使用 Spring Initializr,快速创建springboot工程;

然后去掉,无关紧要的东西留下pom文件就好了,这样父工程就创建好了;
第二步:给父工程添加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"> <!-- 基本信息 -->
<description>SpringBoot 多模块构建示例</description>
<modelVersion>4.0.0</modelVersion>
<name>boot-polymer</name>
<packaging>pom</packaging> <!-- 项目说明:这里作为聚合工程的父工程 -->
<groupId>com.polymer</groupId>
<artifactId>boot-polymer</artifactId>
<version>1.0.0.RELEASE</version> <!-- 继承说明:这里继承SpringBoot提供的父工程 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.2.RELEASE</version>
<relativePath /> <!-- lookup parent from repository -->
</parent> <!-- 模块说明:这里声明多个子模块 -->
<modules>
<module>boot-polymer-web</module>
<module>boot-polymer-service</module>
<module>boot-polymer-repository</module>
<module>boot-polymer-entity</module>
<module>boot-polymer-common</module>
</modules> <properties>
<java.version>1.8</java.version>
</properties> <dependencyManagement>
<dependencies>
<dependency>
<groupId>com.polymerization</groupId>
<artifactId>boot-polymer-web</artifactId>
<version>1.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>com.polymerization</groupId>
<artifactId>boot-polymer-service</artifactId>
<version>1.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>com.polymerization</groupId>
<artifactId>boot-polymer-repository</artifactId>
<version>1.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>com.polymerization</groupId>
<artifactId>boot-polymer-entity</artifactId>
<version>1.0.0.RELEASE</version>
</dependency>
<dependency>
<groupId>com.polymerization</groupId>
<artifactId>boot-polymer-common</artifactId>
<version>1.0.0.RELEASE</version>
</dependency>
</dependencies>
</dependencyManagement> </project>
第三步;创建子工程
右击父工程->new ->maven module->创建选择jar->全部创建jar包工程,别创建war包否则你就别用springboot,不要问为什么

第四步:测试工程是否能启动
首先在boot-polymer-web工程添加pom配置
<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.polymer</groupId>
<artifactId>boot-polymer</artifactId>
<version>1.0.0.RELEASE</version>
</parent>
<artifactId>boot-polymer-web</artifactId> <dependencies>
<dependency>
<groupId>com.polymer</groupId>
<artifactId>boot-polymer-service</artifactId>
</dependency>
<dependency>
<groupId>com.polymer</groupId>
<artifactId>boot-polymer-repository</artifactId>
</dependency>
<dependency>
<groupId>com.polymer</groupId>
<artifactId>boot-polymer-entity</artifactId>
</dependency>
<dependency>
<groupId>com.polymer</groupId>
<artifactId>boot-polymer-common</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</project>
然后再web项目下新建一个启动类:

package com.polymer.app;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; @RestController
@SpringBootApplication //Spring Boot核心注解,用于开启自动配置
public class StartApplication {
//程序可以直接在此启动
@RequestMapping("/")
String index(){
return "ok";
} public static void main(String[] args) {
SpringApplication.run(StartApplication.class, args);
} public void addResourceHandlers(ResourceHandlerRegistry registry) {
//配置静态资源处理
registry.addResourceHandler("/**")
.addResourceLocations("classpath:/META-INF/")
.addResourceLocations("classpath:/hospitalpay");
}
}
然后run as application——》

看到这个就表示启动成功了;然后再去访问一下

成功了;
创建springboot的聚合工程(一)的更多相关文章
- 创建springboot的聚合工程(二)
前篇已经成功创建了springboot的聚合工程并成功访问,下面就要开始子工程木块之间的调用: springboot项目的特点,一个工程下面的类必须要放在启动类下面的子目录下面,否则,启动的时候会报错 ...
- 创建springboot的聚合工程(三)
springboot聚合工程之添加mybatis数据库持久化操作 在boot-polymer-repository工程添加mybatis的相关依赖 <project xmlns="ht ...
- spring boot创建多模块聚合工程
环境:java1.8,idea 聚合工程优势: 1.统一maven操作.可以在一个maven工程管理多个子工程(每个子工程可单独打包,重启,调试.也可通过聚合工程一起管理). 2.统一管理依赖版本.可 ...
- 采用idea创建springboot mybatis web工程
idea是一款强大的利器,最近公司换成采用springboot在eclipse上开发,因为idea的强大,故而,学习一下该利器,搭建springboot的web工程,在下面练习使用. 一.创建spri ...
- IDEA中创建父子工程与maven打包Springboot聚合工程报错程序包不存在问题处理
公司新项目需使用java技术栈,便使用IDEA搭建了一个多SpringBoot项目的聚合工程,因为初次使用,遇到了很多问题,maven打包时各种报错,在网上查了好多终于解决了,为巩固记忆,特作此记录. ...
- Maven 聚合工程的创建
简单场景举例 聚合工程创建示例 说明: 创建 Maven Project:表示创建 maven 项目,new Project 方式创建 创建 Maven Module:表示创建 maven 项目,ne ...
- SpringBoot(一):使用eclipse/idea创建springboot helloword工程
eclipse如何创建spring boot工程: 第一步:首先打开eclipse,找到图中的下图的中“下三角”符号,选中"working sets"(表示将会把eclipse中的 ...
- 使用IntelliJ IDEA创建Maven聚合工程、创建resources文件夹、ssm框架整合、项目运行一体化
一.创建一个空的项目作为存放整个项目的路径 1.选择 File——>new——>Project ——>Empty Project 2.WorkspaceforTest为项目存放文件夹 ...
- idea创建web聚合工程(2)
参考文档: intelj idea 创建聚合项目(典型web项目,包括子项目util.dao.service) 使用IntelliJ IDEA创建Maven聚合工程.创建resources文件夹.ss ...
随机推荐
- Oracle 基础学习笔记
知识点 一.登陆数据库: 登陆数据库: sqlplus system/oracle123456 二.新建用户.授权(连接数据库.创建表.表空间.查询某用户下的表) 语法: create user [用 ...
- 【译】第39节---EF6-数据库命令日志
原文:http://www.entityframeworktutorial.net/entityframework6/database-command-logging.aspx 本节,我们学习如何记录 ...
- LockInt
using System;using System.Collections.Generic;using System.Linq;using System.Text; namespace Game.Lo ...
- 【十六】php 面向对象
__set()方法: 语法: function __set($property, $value) { //$property接收的属性的名字 //$value接收的是属性的值 } 1 class Em ...
- Redis 个人理解总结
一.什么是Redis ? Redis(remote dictionnary server)是一个key-value存储系统.Redis是一个开源的使用ANSI C语言编写.遵守BSD协议.支持网络.可 ...
- mysql 和 sqlserver中备份一张表的区别
sqlserver中备份一张表 SELECT * into qa_buglist_bak FROM qa_buglist 不管表的数据有多大,速度很快: mysql中上述语句就无效了,须得新建一张表, ...
- CentOS6.X、7.X下Jenkins的安装及使用
一.相关概念 1.1 Jenkins概念: Jenkins是一个功能强大的应用程序,允许持续集成和持续交付项目,无论用的是什么平台.这是一个免费的源代码,可以处理任何类型的构建或持续集成.集成Jenk ...
- 越来越“简单”的Java
Java,20岁了.从我写下第一行Java代码,迄今已有十余年了,眼见Java——这个当年刚刚找到自己成长方向的懵懂少年,成长为如今当之无愧的业界王者.它已拥有世界上最庞大的开发者社区,以及无可匹敌的 ...
- Arrays常用方法
传送:https://blog.csdn.net/u013256816/article/details/50924762
- 力扣(LeetCode) 136. 只出现一次的数字
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次.找出那个只出现了一次的元素. 说明: 你的算法应该具有线性时间复杂度. 你可以不使用额外空间来实现吗? 示例 1: 输入: [ ...