目录

一、Spring Boot

1、Spring Boot优点

2、创建Spring Boot

3、Spring Boot配置文件

(1)配置文件的作用

(2)properties文件格式

(3)yml文件的格式

(4)properties vs yml

二、Spring Boot日志框架

1、java常见的日志框架

2、日志级别

3、日志打印


一、Spring Boot

Spring Boot也是Spring官方提供的一个顶级项目。便捷的开发Spring框的的项目(提高效率)。基于“约定大于配置”的设计原则。Spring Boot提供了绝大多数的约定(如果没有配置,就基于默认的约定来设置相关项目需要的属性)。

1、Spring Boot优点

  • 快速集成框架:提供了启动添加依赖的功能,用于秒级集成各种框架(自动化配置)。如:添加Spring Boot支持的其它框架(如Spring-boot-driud-starter数据库连接池的框架,可以自动的帮助我们注册其中的Bean对象,完成数据库连接的配置)
  • 内置运行容器,无需配置Tomcat等Web容器,直接运行和部署。
  • 完全抛弃繁琐的XML,使用注解和配置的方式进行开发。(使用传统的Spring进行项目开发,会使用大量的xml文件,及文件内容)
  • 支持更多的监控指标,可以更好地了解项目的运行情况。(这是官方提供的一个专门监控Spring Boot项目的依赖包)。

2、创建Spring Boot

这里描述基于普通的maven项目进行搭建。

(1)创建一个普通的maven项目

(2)修改pom.xml文件,引入依赖

(3)准备SpringBoot的启动配置文件

 (4)开发SpringBoot启动类

【代码如下】

package org.exmaple;
//必须在某个包下
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
//SpringBoot的启动类注解
@SpringBootApplication
public class Application {public static void main(String[] args) {//基于SpringBoot的方式启动SpringApplication.run(Application.class,args);}
}

配置成功如下:

可以提供web静态资源,在resources目录下的public或者static文件夹中,访问时路径为资源路径,不需要添加public等文件夹路径。

url格式:http://ip:port/应用上下文路径/服务资源路径?queryString

  • 应用上下文路径:Springboot中默认为“/”;
  • 服务资源路径:public和static下的文件,但不包含本身。

3、Spring Boot配置文件

(1)配置文件的作用

整个项目中所有重要的数据都是在配置文件中配置:

  • 数据库的连接信息(用户名和密码的设置);
  • 项目的启动端口;
  • 第三方系统的调用密钥等信息;
  • 用于发现和定位问题的普通日志和异常日志等。

配置文件在resources目录下,文件名为application,格式为properties/yml。(只能出现一个配置文件)

(2)properties文件格式

以键值对的形式进行配置(每个键值对一行),key和value之间使用“=”连接。键的多层级之间使用“."连接。

 读取配置文件:

使用@Value注解来实现。使用${}格式读取。

@RestController
@RequestMapping("/user")
public class UserController {//@Value直接,使用${“配置项键名”},就可以将该键对应的值设置到属性中@Value("${server.port}")private String port;@RequestMapping("/port")public String port(){return port;}
}

上面将端口号改为8085,此时访问该路径显示端口号为8085.

(3)yml文件的格式

yml是树形结构的配置文件,基础语法“key: value”,key和vlaue之间使用英文冒号加空格的方式组成,空格不可省略。yml文件最大的优势是可以跨语言,不只是java中可以使用,golang、python都可以使用yml作为配置文件。

yml配置对象(这个时候就不能使用@Value来读取配置中的对象了,需要使用另一个注解@ConfigurationProperties来进行读取):

(4)properties vs yml

  • properties通过键值对的形式配置文件;yml使用类似于json格式的属性方式进行配置,层级之间使用换行缩进的方式配置,key和value之间使用英文冒号加空格的方式配置,空格不能省略。
  • properties为早期并且默认的配置文件的格式,但其配置存在一定的冗余数据,使用yml可以很好的解决数据冗余的问题。
  • yml通用性好,支持更多语言,如果是云服务器开发,可以使用yml配置文件作为1Java和go的共同配置文件。

二、Spring Boot日志框架

日志框架的作用:

  • 设置多种日志级别;
  • 打印时,指定不同的日志级别;
  • 输出到不同的地方:比如控制台、本地文件等。

不同的环境,需要不同的打印信息,如开发环境:需要打印一些调试信息:但生产环境(一般指linux服务器,运行项目,不需要观察控制台,日志一般输出到文件中),就不能打印这些调试信息。

1、java常见的日志框架

  • log4j=>apache提供的日志框架;
  • log4j2=>log4j的升级版本;
  • logback=>springboot默认的内置日志框架
  • slf4j=>日志的桥接框架(如果直接使用耨个日志框架的api,比如logback,那么之后要切换到lig4j,必须改代码,不太方便,,所以产生了slf4j这个桥接框架。基于slf4j的api来打印日志,之后,就可以无缝切换日志框架的具体实现了)。

2、日志级别

级别由低到高:

  • trace:微量,级别最低;
  • debug:需要调试时候的关键信息打印;
  • info:普通的打印信息;
  • warn:警告,不影响使用,但需要注意的问题;
  • error:错误信息,级别较高的错误日志信息;
  • fatal:致命的,因为代码异常导致程序退出执行的事件。

配置日志级别

#root,表示默认的所有的代码中,设置的打印级别
logging.level.root=INFO#自定义某个包/某个类的打印级别(符合条件的就不在世root的级别)
#org.example.controller表示的这个包/类的打印级别自定义
lohhing.level.org.example.controller=debug

3、日志打印

使用日志对象,调用不同级别的打印方法(添加@Slf4j注解):

也可以使用字符串格式化的方式进行打印(变量替换占位符):

将日志保存到本地文件

# 设置日志文件的目录
logging:file:path: D:\home\ruoyi# 设置日志文件的文件名
logging:file:name: D:\home\ruoyi\spring-1204.log

Spring Boot框架相关推荐

  1. springboot原生mysql写法_【Rainbond最佳实践】Spring Boot框架配置MySQL

    Rainbond开源软件介绍: Rainbond是国内首个开源的生产级无服务器PaaS. 深度整合基于Kubernetes的容器管理.多类型CI/CD应用构建与交付.多数据中心的资源管理等技术,提供云 ...

  2. spring boot 学习(二)spring boot 框架整合 thymeleaf

    spring boot 框架整合 thymeleaf spring boot 的官方文档中建议开发者使用模板引擎,避免使用 JSP.因为若一定要使用 JSP 将无法使用. 注意:本文主要参考学习了大神 ...

  3. Spring Boot框架表达式注入漏洞

    2019独角兽企业重金招聘Python工程师标准>>> 高危漏洞的曝光总是发生在意想不到的时刻:周末所有人都准备享受周末的时间,Spring Boot框架的SpEL表达式注入通用漏洞 ...

  4. spring boot框架学习学前掌握之重要注解(2)-通过java的配置方式进行配置spring

    本节主要内容: 1:通过代码演示实现零XML配置spring 2:使用重点注解理解 声明: 本文是<凯哥陪你学系列-框架学习之spring boot框架学习>中spring boot框架学 ...

  5. Spring Boot框架敏感信息泄露的完整介绍与SRC实战(附专属字典与PoC)

    转载于:https://www.freebuf.com/vuls/289710.html #前言 ##Spring Boot框架介绍 Spring框架功能很强大,但是就算是一个很简单的项目,我们也要配 ...

  6. Spring Boot框架中使用Jackson的处理总结

    1.前言 通常我们在使用Spring Boot框架时,如果没有特别指定接口的序列化类型,则会使用Spring Boot框架默认集成的Jackson框架进行处理,通过Jackson框架将服务端响应的数据 ...

  7. Spring Boot 框架介绍和使用

    本文参考自Spring Boot文档. Spring Boot 简介 Spring框架功能很强大,但是就算是一个很简单的项目,我们也要配置很多东西.因此就有了Spring Boot框架,它的作用很简单 ...

  8. spring boot框架学习2-spring boot核心(1)

    本节主要: 1:解析spring boot入口和@SpringBootApplication源码详解 SpringBootApplication包含: @SpringBootConfiguration ...

  9. Spring Boot 框架学习笔记(五)( SpringSecurity安全框架 )

    Spring Boot 框架学习笔记(五) SpringSecurity安全框架 概述 作用 开发示例: 1. 新建项目 2. 引入依赖 3. 编写`SecurityConfig`类,实现认证,授权, ...

  10. 基于Spring boot框架开发的电商网站系统

    目 录 第一章 绪论- 2 1.1 编写目的 - 2 1.2 项目背景 - 2 1.3 项目需求 - 2 第二章 系统体系结构 - 3 2.1 系统体系结构 - 3 2.2 数据库设计 E-R 图 - ...

最新文章

  1. 程序员必练六大项目:从数据结构到操作系统,计算机教授为你画重点
  2. 2008r2添加没有应用程序服务器,将应用程序移动到服务器2008R2 64位时的AccessViolationException...
  3. python装饰器两层和三层区别_学习python的第十五天(函数的装饰器,两层装饰器和三层装饰器)...
  4. 20162314 《Program Design Data Structures》Learning Summary Of The First Week
  5. Java基础---认识正则表达式
  6. session用户账号认证(一个用户登陆,踢出前一个用户)
  7. 周立功USBCAN资料分享
  8. 航信3.0开票模拟系统
  9. 手机上能不跳转就不跳转
  10. android 强制横屏布局,Activity强制横竖屏和全屏的方法
  11. msfvenom制作360,腾讯免杀木马
  12. Harmony OS har包生成和使用技巧
  13. python可以剪辑视频吗_你知道吗?Python也可以剪辑视频!
  14. [手机分享]黑莓手机8系列分享之——黑莓88XX系列
  15. 树莓派计算模块CM4搭建软路由OpenWrt+OpenClash过程记录
  16. 网站内嵌编辑器ace
  17. 10 款牛哄哄的 Chrome 插件
  18. win10配置python虚拟环境的路径
  19. vu16和u16的区别 volatile关键字的用法简介
  20. Mac运行越来越慢的解决办法

热门文章

  1. C++之字符串大小写转换
  2. USACO section2.4 Cow Tours题解代码
  3. element ui 组件vue组件使用slot-scope=“scop“根据ID改变地址
  4. 【web前端特效源码】使用HTML5+CSS3+JavaScript制作一个复古手机键盘(带声音)的动画效果~~适合初学者~超简单~
  5. 图片裁剪上传插件—jquery.photoClip.js
  6. C语言开发必会 宏定义、宏函数
  7. 银行数字化转型导师坚鹏:金融科技与数字化转型成功案例
  8. 共享流量包FAQ集锦
  9. uni-app 苹果登录
  10. LeetCode-1694. 重新格式化电话号码【字符串,分块】