您的位置:首页 > 编程语言 > Java开发

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项目的流程点击打开链接
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: