spring boot 入门: 参考文章:
https://www.cnblogs.com/wmyskxz/p/9010832.html
https://baijiahao.baidu.com/s?id=1623648034778672046&wfr=spider&for=pc
建工程
勾上 web 模板
代码结构
添加 HelloController
不强制要放到 controller 目录,放到其他目录也能正常工作。
启动 web
spring boot 已集成了 tomcat,无需配置 tomcat 再启动。
访问
由启动信息可见访问地址:curl http://127.0.0.1:8080/hello
集成 mybatis
修改 pom.xml,添加数据库相关依赖。
<!-- mybatis -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.1.1</version>
</dependency>
<!-- mysql -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.21</version>
</dependency>
配置 resources/application.properties (也可使用.yml文件做配置)(参考 https://blog.csdn.net/qq_35760213/article/details/73863252)
spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=111111
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
添加 Student 类
添加 Mapper
添加 Controller
访问
curl http://127.0.0.1:8080/student/list
log4j
添加依赖
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
配置 application.properties
logging.config=classpath:log4j2.xml
添加 resources/log4j2.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="120 seconds">
<appender name="FILE_TEST" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>/Users/shicai.xsc/Downloads/spring-boot.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<fileNamePattern>/Users/shicai.xsc/Downloads/%d{yyyy-MM-dd}/spring-boot.%d{yyyy-MM-dd}.%i.gz</fileNamePattern>
<maxFileSize>512MB</maxFileSize>
<!-- keep 7 days' worth of history capped at 5GB total size -->
<maxHistory>7</maxHistory>
<totalSizeCap>5GB</totalSizeCap>
</rollingPolicy>
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %highlight(%-5level) %cyan(%logger{36}) - TRACE_ID=%X{TRACE_ID} %msg%n
</pattern>
</encoder>
</appender>
<logger name="FileTest" level="INFO">
<appender-ref ref="FILE_TEST"/>
</logger>
<root level="INFO">
<appender-ref ref="FILE_TEST"/>
</root>
</configuration>
使用 logger
@Slf4j // 通过 lombok 引入 logger
@RestController
public class StudentController {
@Resource
private StudentMapper studentMapper;
@RequestMapping("/student/list")
@ResponseBody
public List<Student> hello() {
log.info("user accessing student/list"); // 使用 logger
return studentMapper.listStudent();
}
}
打包 jar 并部署
mvn install -Dmaven.test.skip
也可配置成打包成 war
如果 application.properties 没被加载
1. 移除 pom.xml 里的 <packaging>pom</packaging> 配置,或者改为 <packaging>jar</packaging>
多个 application.properties
开发时,会存在多个 application.properteis,通过 Profiles 指定当前 debug 使用哪一个。
还可参考:https://blog.csdn.net/m0_37054738/article/details/81388925