项目介绍
此项目采用父子项目结构,父项目trip-parent-55为springboot项目,子项目均为Mevan项目
通过父项目可维护公共依赖和依赖的版本
trip-core为公共资源项目,内包括entity,mapper,service及其实现类,util,config等公共资源,其余后端子项目都引用trip-core依赖,这样子还需要更新trip-core中的依赖即可,便于维护
trip-mgr和trip-website-api负责编写具体服务controller,拦截器interceptor,增强控制类controllerAdvice等
trip-website则是前端项目,内含css,js,html,图片等静态资源
一.创建父项目 - Springboot项目
1.加入Lombok工具
2.将父项目中src目录删除
3.设置父项目pom.xml版本
<properties>
<java.version>1.8</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<spring-boot.version>2.2.13.RELEASE</spring-boot.version>
</properties>
二.创建子项目 - Mevan项目即可
1.创建四个子项目
trip-mgr-site 后台管理项目,trip-web-site 前台前端项目, trip-website-api 前台后端项目,trip-core-site 前后台公共资源项目
2.设置端口号
创建完项目后,给项目设置端口号
- trip-website-api - 8080
- trip-web-site - 80
- tirp-mgr-site - 9999
trip-core是公共资源项目,不需要启动,所以不设置端口号
3.创建启动器
给需要运行的项目添加启动器
trip-mgr-site/src/main/java/com/example/MgrApp.java
@SpringBootApplication
public class MgrApp {
public static void main(String[] args) {
SpringApplication.run(MgrApp.class,args);
}
}
trip-website-api/src/main/java/com/example/WebsiteApiApp.java
@SpringBootApplication
public class WebsiteApiApp {
public static void main(String[] args) {
SpringApplication.run(WebsiteApiApp.class,args);
}
}
trip-parent-55\trip-web-site\src\main\java\com\example\WebsiteApp.java
@SpringBootApplication
public class WebsiteApp {
public static void main(String[] args) {
SpringApplication.run(WebsiteApp.class,args);
}
}
4.控制子项目版本
trip-parent-55\pom.xml
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>${spring-boot.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- 父项目控制trip-core公共项目的版本-->
<dependency>
<groupId>com.com.example</groupId>
<artifactId>trip-core-site</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
</dependencyManagement>
其余项目引入trip-core依赖(trip-web-site不用,因为它是个前端项目)的时候直接引入,不用在意版本了,如
5.trip-core加入依赖
trip-core-site\pom.xml
<dependencies>
<!-- web-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- mysql-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.45</version>
</dependency>
<!-- mybatis-plus-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.2</version>
</dependency>
<!-- mp代码生成器-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-generator</artifactId>
<version>3.3.2</version>
</dependency>
<!-- 代码生成引擎-->
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity-engine-core</artifactId>
<version>2.0</version>
</dependency>
<!-- fastjson-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.78</version>
</dependency>
</dependencies>
trip-web-site中与前端页面交互的时候需要利用web依赖中集成的tomcat,所以也要加
trip-web-site\pom.xml
<!-- web-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
[注意:清除target目录可用Maven工具一次性清除]
6.数据库创建
用navicat图形化工具创建
7.springboot配置mysql数据库连接
trip-core-site\src\main\resources\core.properties [注意:trip-core项目不能用application为配置文件名,因为其他项目引入trip-core依赖的时候会与其本身的application文件冲突]
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/wolf2w55?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8
spring.datasource.username=root
spring.datasource.password=root
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
core.properties需要经过配置类设置才可以被项目识别为配置文件
至此,子项目创建及配置基本完成