目录
1.什么是Spring Boot?为什么要学Spring Boot?
4.更简单的日志输出---lombok 需要两步 (比上面的3.更简单)
Spring 的诞⽣是为了简化 Java 程序的开发的,⽽ Spring Boot 的诞⽣是为了简化 Spring 程序开发
的.
可以把spring boot理解为脚手架,脚⼿架的作⽤是砌筑砖墙,浇筑混凝⼟、⽅便墙⾯抹灰,装饰和粉刷的,简单来说,就是使⽤脚⼿架可以更快速的盖房⼦.因此可以说Spring Boot 就是 Spring 框架的脚⼿架,它就是为了快速开发 Spring 框架⽽诞⽣的
3.1.1安装 Spring Assistant插件
因为用的 Idea 社区版,所以先要安装 Spring Assistant插件才能创建 Spring Boot 项⽬
3.1.2创建 Spring Boot 项⽬
学习 JavaEE 就是⽤来实现 Web 项⽬或接⼝的,Spring 其实是⼀个普通 Java 项⽬,没
办法直接和浏览器进⾏互动,所以接下来我们要⽤ Spring Boot 来实现和浏览器及⽤户的交互。
在创建的项⽬包路径下创建 UserController ⽂件:
重新启动项⽬,访问如下页面:
需要托管到Spring Boot的对象必须放在Spring Boot启动类的根路径或者子路径中,否则不能被框架识别
Spring Boot的配置是比较少的,但是Spring Boot的设计思想是约定大于配置
properties 配置⽂件是最早期的配置⽂件格式,也是创建 Spring Boot 项⽬默认的配置⽂件
properties 是以键值的形式配置的,key 和 value 之间是以“=”连接的
如果在项⽬中,想要主动的读取配置⽂件中的内容,可以使⽤ @Value 注解来实现。
@Value 注解使⽤“${}”的格式读取
想要解决配置文件冗余信息多这个问题,就可以使⽤ yml 配置⽂件的格式化了
yml 是 YAML 是缩写,它的全称 Yet Another Markup Language 翻译成中⽂就是“另⼀种标记语⾔”
yml 最⼤的优势是可以跨语⾔,不⽌是 Java 中可以使⽤ golang、python 都可以使⽤ yaml 作为配置⽂件
yml 是树形结构的配置⽂件,它的基础语法是“key: value”,注意 key 和 value 之间使⽤英⽂冒号加空格的⽅式组成的,其中的空格不可省略
使⽤ yml 连接数据库:
我们能看到他的确可以比上面的properties 少很多冗余的信息
4.3.1配置一个一个单独的
yml 读取配置的⽅式和 properties 相同,使⽤ @Value 注解即可
4.3.1.1注意事项:value 值加单双引号
4.3.2配置对象
这个时候就不能⽤ @Value 来读取配置中的对象了,此时要使⽤另⼀个注解 @ConfigurationProperties来读取
yml中配置对象有两种方式:
看一个配置对象的例子:
4.3.3配置集合
集合的读取和对象⼀样,也是使⽤ @ConfigurationProperties 来读取的
yml中配置集合有两种方式:
举一个例子:
⽇志对于我们来说,最主要的⽤途就是排除和定位问题。
除了发现和定位问题之外,我们还可以通过⽇志实现以下功能:
记录⽤户登录⽇志,⽅便分析⽤户是正常登录还是恶意破解⽤户。
记录系统的操作⽇志,⽅便数据恢复和定位操作⼈。
记录程序的执⾏时间,⽅便为以后优化程序提供数据⽀持。
以上这些都是⽇志提供的⾮常实⽤的功能
Spring Boot 项⽬在启动的时候默认就有⽇志输出
Spring Boot 内置了⽇志框架,默认情况下,输出的⽇志并⾮是开发者定义和打印的
完整代码示例:
每次都使⽤ LoggerFactory.getLogger(xxx.class) 很繁琐,且每个类都添加⼀遍,也很麻烦,这⾥讲⼀种更好⽤的⽇志输出⽅式,使⽤ lombok 来更简单的输出
1.添加 lombok 框架⽀持。
这一步一般我们就在兼项目的时候就勾上lombok了,因此一般来讲就不用自己添加lombok的依赖了
但是如果需要,这里也附上:
- <dependency>
- <groupId>org.projectlombokgroupId>
- <artifactId>lombokartifactId>
- <version>1.18.20version>
- <optional>trueoptional>
- dependency>
或者
2.使⽤ @slf4j 注解输出⽇志。
注意:使⽤ @Slf4j 注解,在程序中使⽤ log 对象即可输⼊⽇志,并且只能使⽤ log 对象才能输出,这是 lombok 提供的对象名
lombok的原理:
lombok 更多注解说明 :
⽇志的级别就是为了筛选符合⽬标的⽇志信息的,有了⽇志级别之后就可以过滤⾃⼰想看到的信息了,从⽽节省开发者的信息筛选时间
日志级别越往上接收到的消息就越少
⽇志的输出级别,默认是 info
在⽣产环境上我们需要将⽇志保存下来,以便出现问题之后追溯问题,把⽇志保存下来的过程就叫做持久化
想要将⽇志进⾏持久化,只需要在配置⽂件中指定⽇志的存储⽬录或者是指定⽇志保存⽂件名之后,Spring Boot 就会将控制台的⽇志写到相应的⽬录或⽂件下了