spring boot创建多模块项目
2018-03-01 18:18
330 查看
1:先创建一个聚合工程parent<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.yonmei</groupId>
<artifactId>taobao-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>
<!-- 继承说明:这里继承SpringBoot提供的父工程 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.7.RELEASE</version>
<relativePath/>
</parent>
<modules>
<module>taobao-interface</module>
<module>taobao-service</module>
<module>taobao-entity</module>
<module>taobao-web</module>
</modules>
<!-- 版本说明:这里统一管理依赖的版本号 -->
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.yonmei</groupId>
<artifactId>taobao-web</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yonmei</groupId>
<artifactId>taobao-service</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yonmei</groupId>
<artifactId>taobao-interface</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yonmei</groupId>
<artifactId>taobao-entity</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.42</version>
</dependency>
</dependencies>
</dependencyManagement>
</project>
2:创建公共项目common<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.yonmei</groupId>
<artifactId>taobao-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<groupId>com.yonmei</groupId>
<artifactId>taobao-common</artifactId>
<version>0.0.1-SNAPSHOT</version>
</project>
3:创建parent的子模块(mapper,service,interface都是一样的,其中web的有点特殊!)
这里就演示service模块的创建<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.yonmei</groupId>
<artifactId>taobao-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>taobao-service</artifactId>
<dependencies>
<dependency>
<groupId>com.yonmei</groupId>
<artifactId>taobao-interface</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
abd7
<groupId>com.yonmei</groupId>
<artifactId>taobao-entity</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
package com.gwm.service;
import org.springframework.stereotype.Service;
import com.gwm.api.UsersService;
import com.gwm.entity.Users;
@Service
public class UsersServiceImpl implements UsersService {
@Override
public String getUsersInfo(Users users) {
System.out.println("springboot de ipml"+users);
return "hellow springboot";
}
}
4:创建web模块<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.yonmei</groupId>
<artifactId>taobao-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>taobao-web</artifactId>
<dependencies>
<dependency>
<groupId>com.yonmei</groupId>
<artifactId>taobao-interface</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yonmei</groupId>
<artifactId>taobao-service</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yonmei</groupId>
<artifactId>taobao-entity</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</project>
4.1: UsersController类的代码如下所示!package com.gwm.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.gwm.api.UsersService;
import com.gwm.entity.Users;
@RestController
@RequestMapping("users")
public class UsersController {
@Autowired
private UsersService usersService;
@RequestMapping("/getUserInfo")
public String getString(){
System.out.println("userInfo:="+usersService.getUsersInfo(new Users("gwm","123456")));
return usersService.getUsersInfo(new Users("gwm","123456"));
}
}
4.2:启动类的代码如下所示package com.gwm.controller;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/*
* 1:可以加载一个扫描配置文件
* */
import org.springframework.context.annotation.ComponentScan;
@ComponentScan(basePackages={"com.gwm"})
@SpringBootApplication
public class StarterApplication {
public static void main(String[] args) {
SpringApplication.run(StarterApplication.class, args);
}
}
4.3:上述启动类中需要注意到的是,这里有可能会报一个错误,错误的原因是因spring boot自动扫描没有找到bean,所以我们可以自己加一个注解配置,自己指定需要扫描的文件或者类,这个配置就是:@ComponentScan(basePackages={"com.gwm"})
5:需要打包web的时候就需要在含有启动类(也就是controller类)的模块中添加一个插件(一段代码),其中打包的命令是
package,如果是打包war,就要将web层的pom的打包方式改为war,直接放到tomcat中去即可,如果是jar,那么需要找到该jar的目录,然后运行java -jar xx.xx.xx.jar即可!
<build>
<finalName>first-spintboot-project</finalName>
<plugins>
<plugin>
<!--该插件主要用途:构建可执行的JAR -->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
另外一个博主讲的是IDEA创建springboot项目的流程点击打开链接
<groupId>com.yonmei</groupId>
<artifactId>taobao-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>
<!-- 继承说明:这里继承SpringBoot提供的父工程 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.7.RELEASE</version>
<relativePath/>
</parent>
<modules>
<module>taobao-interface</module>
<module>taobao-service</module>
<module>taobao-entity</module>
<module>taobao-web</module>
</modules>
<!-- 版本说明:这里统一管理依赖的版本号 -->
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.yonmei</groupId>
<artifactId>taobao-web</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yonmei</groupId>
<artifactId>taobao-service</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yonmei</groupId>
<artifactId>taobao-interface</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yonmei</groupId>
<artifactId>taobao-entity</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.42</version>
</dependency>
</dependencies>
</dependencyManagement>
</project>
2:创建公共项目common<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.yonmei</groupId>
<artifactId>taobao-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<groupId>com.yonmei</groupId>
<artifactId>taobao-common</artifactId>
<version>0.0.1-SNAPSHOT</version>
</project>
3:创建parent的子模块(mapper,service,interface都是一样的,其中web的有点特殊!)
这里就演示service模块的创建<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.yonmei</groupId>
<artifactId>taobao-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>taobao-service</artifactId>
<dependencies>
<dependency>
<groupId>com.yonmei</groupId>
<artifactId>taobao-interface</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
abd7
<groupId>com.yonmei</groupId>
<artifactId>taobao-entity</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
</project>
package com.gwm.service;
import org.springframework.stereotype.Service;
import com.gwm.api.UsersService;
import com.gwm.entity.Users;
@Service
public class UsersServiceImpl implements UsersService {
@Override
public String getUsersInfo(Users users) {
System.out.println("springboot de ipml"+users);
return "hellow springboot";
}
}
4:创建web模块<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.yonmei</groupId>
<artifactId>taobao-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>taobao-web</artifactId>
<dependencies>
<dependency>
<groupId>com.yonmei</groupId>
<artifactId>taobao-interface</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yonmei</groupId>
<artifactId>taobao-service</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yonmei</groupId>
<artifactId>taobao-entity</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</project>
4.1: UsersController类的代码如下所示!package com.gwm.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.gwm.api.UsersService;
import com.gwm.entity.Users;
@RestController
@RequestMapping("users")
public class UsersController {
@Autowired
private UsersService usersService;
@RequestMapping("/getUserInfo")
public String getString(){
System.out.println("userInfo:="+usersService.getUsersInfo(new Users("gwm","123456")));
return usersService.getUsersInfo(new Users("gwm","123456"));
}
}
4.2:启动类的代码如下所示package com.gwm.controller;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/*
* 1:可以加载一个扫描配置文件
* */
import org.springframework.context.annotation.ComponentScan;
@ComponentScan(basePackages={"com.gwm"})
@SpringBootApplication
public class StarterApplication {
public static void main(String[] args) {
SpringApplication.run(StarterApplication.class, args);
}
}
4.3:上述启动类中需要注意到的是,这里有可能会报一个错误,错误的原因是因spring boot自动扫描没有找到bean,所以我们可以自己加一个注解配置,自己指定需要扫描的文件或者类,这个配置就是:@ComponentScan(basePackages={"com.gwm"})
5:需要打包web的时候就需要在含有启动类(也就是controller类)的模块中添加一个插件(一段代码),其中打包的命令是
package,如果是打包war,就要将web层的pom的打包方式改为war,直接放到tomcat中去即可,如果是jar,那么需要找到该jar的目录,然后运行java -jar xx.xx.xx.jar即可!
<build>
<finalName>first-spintboot-project</finalName>
<plugins>
<plugin>
<!--该插件主要用途:构建可执行的JAR -->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
另外一个博主讲的是IDEA创建springboot项目的流程点击打开链接
相关文章推荐
- 用 Spring Boot 实现电商系统 Web API (二)创建多模块项目
- SpringBoot创建maven多模块项目实战代码
- 代码学习与实践 (一):Spring Boot 多模块项目创建与配置 注册 登录
- 基于maven使用IDEA创建springboot多模块项目
- SpringBoot创建maven多模块项目(实战)
- Springboot整合dubbo构建maven多模块项目(一)- 项目创建和pom.xml中jar包配置
- idea 创建多模块spring boot项目
- Idea使用Maven创建多模块SpringBoot项目问题记录
- Spring Boot 多模块项目创建与配置 (一)
- SpringBoot创建一个最基本的项目
- maven创建多模块项目+springMVC+mybatis
- SpringBoot多模块项目
- 通过springboot+mybatis+mysql+freemarker创建一个java web项目
- spring boot项目中使用spring-boot-devtools模块进行代码热部署,避免重新启动web项目
- spring boot项目中使用spring-boot-devtools模块进行代码热部署,避免重新启动web项目
- idea 下gradle创建springboot 项目
- idea创建springboot项目(maven)
- springboot学习(一)认识springboot及创建第一个springboot项目
- 从零开始使用IDEA创建SpringBoot项目(图文)
- 快速创建一个SpringBoot项目