目录
什么是SpringBoot?
Spring 的诞生是为了简化Java 程序的开发的,而Spring Boot 的诞生是为了简化 Spring 程序开发的。
SpringBoot的优点
- 快速集成框架,Spring Boot 提供了启动添加依赖的功能,用于秒级集成各种框架。
- 内置运行容器,无需配置 Tomcat 等 Web 容器,直接运行和部署程序。
- 快速部署项目,无需外部容器即可启动并运行项目。
- 可以完全抛弃繁琐的 XML,使用注解和配置的方式进行开发。(传统的spring项目开发,会使用大量的xml文件)
- 支持更多的监控的指标,可以更好的了解项目的运行情况。
SpringBoot项目搭建
和之前的spring项目一样,用maven创建,大家可以看看我一文了解Spring框架这篇文章。
创建一个普通的maven项目
修改pom.xml(检查引入的依赖是否正确)
准备SpringBoot的启动配置文件
开发SpringBoot的启动类
-
@SpringBootApplication
-
public
class
Application {
-
public
static
void
main
(String[] args) {
-
SpringApplication.run(Application.class,args);
-
}
-
}
输出HelloWord
-
@RestController
-
@RequestMapping("/user")
-
public
class
UserController {
-
-
@RequestMapping("/sayHi")
-
public String
sayHi
(){
-
return
"HelloWord";
-
}
-
-
}
注意事项
- 启动配置文件的文件名不能写错,内容可以为空
- 只有在启动类所在的包以下,才会进行包扫描
SpringBoot的配置文件
整个项目中所有重要的数据都是在配置文件中配置的,配置文件的路径是src/main/resources,文件名是application,格式是properties或yml。
特殊说明
- 理论上讲 properties 可以和 yml 一起存在于一个项目当中,当 properties 和 yml 一起存在一个项目中时,如果配置文件中出现了同样的配置,比如 properties 和 yml 中都配置了“server.port”,那么这个时候会以 properties 中的配置为主,也就是说.properties 配置文件的优先级最高,但加载完 .properties 文件之后,也会加载 .yml 文件的配置信息。
- 虽然理论上来讲 .properties 可以和 .yml 共存,但实际的业务当中,我们通常会采取一种统一的配置文件格式,这样可以更好的维护(降低故障率)。
- properties 是以 key=value 的形式配置的键值类型的配置文件,而 yml 使用的是类似 json 格式的树形配置方式进行配置的,yml 层级之间使用换行缩进的方式配置,key 和 value 之间使用“: ”英文冒号加空格的方式设置,并且空格不可省略。
- properties 为早期并且默认的配置文件格式,但其配置存在一定的冗余数据,使用 yml 可以很好的解决数据冗余的问题。
- yml 虽然可以和 properties 共存,但一个项目中建议使用统一的配置类型文件。
SpringBoot日志文件
日志是程序的重要组成部分,想象一下,如果程序报错了,不让你打开控制台看日志,那么你能找到报错的原因吗?
日志的作用
- 记录用户登录日志,方便分析用户是正常登录还是恶意破解用户。
- 记录系统的操作日志,方便数据恢复和定位操作人。
- 记录程序的执行时间,方便为以后优化程序提供数据支持。
日志框架
作用
- 设置多种级别日志
- 打印时,指定不同的日志级别(不同的环境,需要不同的打印信息)
- 输出到不同地方(控制台,本地文件,数据库)
java常见的日志框架
log4j : apache提供的日志框架
log4j2 : log4j的升级版本
logback : springboot默认的内置日志框架
slf4j : 日志的桥接框架
日志的使用
配置日志级别
日志的级别:debug<info<warn<error
#设置日志打印级别 debug<info<warn<error logging: level: root: info
使用日志对象
-
@Slf4j
//lombok注解,表示当前类会自动生成一个log是属性
-
public
class
UserController {
-
-
// lombok注解省略了以下这行代码
-
// private static final Logger log = LoggerFactory.getLogger(UserController.class);
-
-
@Value("${my.user.name}")
-
private String username;
-
-
public
void
init
(){
-
System.out.println(username);
-
log.debug(
"配置文件中的user.name"+username);
-
// log.error(""); 只能打印设置级别以上的日志
-
}
转载:https://blog.csdn.net/m0_61801103/article/details/127817430
查看评论