如何快速构建Spring-Boot项目
SpringBoot简介
SpringBoot是由Pivotal团队在2013年开始研发、2014年4月发布第一个版本的全新开源的轻量级框架。它基于Spring4.0设计,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程。另外SpringBoot通过集成大量的框架使得依赖包的版本冲突,以及引用的不稳定性等问题得到了很好的解决。
使用spring-boot框架的自动配置可以快速的构建一个Java项目,同时Spring-Boot官网提供了很多的其他的开发组件,可以在快速开发的过程中,可以满足你的大部分功能或业务需求。
步骤一:在线生成spring-boot项目
spring-boot提供一个快速生成项目的在线工具,可以自己根据需求快速添加依赖,定义包结构。
网址:https://start.spring.io/
这是在线工具的主界面,可以选择项目的构建工具,spring-boot的版本号,包名,项目名,依赖。
一般构建项目使用Maven,那就选择Maven构建方式,spring-boot版本的使用推荐版本即可。
包名定义方式都是公司域名反写,加上项目名,填入自定的项目,接下来选择添加的依赖。
选择依赖可以是检索模式,也可以是一览模式。下面选择一览模式进行添加必要的依赖。
选择web下的Spring Web即可,因为spring-boot做了很好的封装,这个起步依赖集成了常用的 web 依赖。
关于数据连接这一快选择必要的三个依赖即可,JDBC API、MyBatis Framework、MySQL Driver,若你使用的是其他的数据库,只需要选择其他的Driver驱动即可。
以上添加的依赖都是一些必要依赖,若有其他需求可以自行添加相关依赖。
点击Generate 开始下载生成的空项目myapp.zip
进行解压缩
解压完的目录结构如下
pom.xml如下
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.4.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.david.lei.myapp</groupId>
<artifactId>myapp</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>myapp</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.1</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
步骤二:添加必要的配置
虽然Spring-Boot已经自动配置,简化很多配置,但是一些很必要的配置还是需要添加
默认的配置文件是 application.properties
但是spring-boot也支持yml格式的配置文件
所以我推荐使用yml配置文件去配置,层次更清晰。
以上yml文件命名成application.yml ,
1.tomcat配置:因为现版本spring-boot 内置Tomcat9.0,所以可以配置服务的端口和请求的路径名。
2.数据源配置:如上图所示,需要配置数据源的连接Url,用户名和密码,以及数据专属的驱动。
3.log配置:偏于后期的调试和确认,相关log的配置也是需要的。
# tomcat configuration
server:
port: 8080
servlet :
context-path: /myapp
# mybatis configuration
mybatis:
configuration:
map-underscore-to-camel-case: true
# database configuration
spring.datasource:
url: jdbc:mysql://localhost:3306/myappdb?serverTimezone=GMT%2B8
username: root
password: root
driverClassName: com.mysql.jdbc.Driver
# log level
logging.level:
root: WARN
org.springframework: DEBUG
org.apache.coyote.http11.Http11InputBuffer: DEBUG
jp.co.nttdata.myapp: DEBUG
sample.mybatis.mapper: DEBUG
org.apache.ibatis: DEBUG
步骤三:业务代码实装
生成的项目已经有了一个启动类,叫做MyappApplication.java,保证是在包结构的最外层。
实装代码和普通的java项目大同小异
以下是我的部分目录结构
编写测试用Controller
package com.david.lei.myapp.controller.user;
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping(value = "/user")
public class UserLoginController {
@PostMapping(value = "/login")
public LoginOutputFrom userLogin(@RequestBody LoginInputFrom inputFrom ){
LoginOutputFrom outputFrom = new LoginOutputFrom("DaviLei08","5656sd56s5a6d56s5d5a6s5d6as");
return outputFrom;
}
}
一切准备就绪就可以启动最外层的main函数
若没有报错信息,证明已经启动成功
测试一下
完全没有问题,到此spring-boot的项目就已经构建完成了