Java项目中的日志(logger)
程序员文章站
2024-02-28 18:58:58
...
1.如何在项目中打日志:
1.在类中写一个常量:
private static final Logger LOGGER =LoggerFactory.getLogger(HelloConntroller.class);
注意
LoggerFactory.getLogger(HelloConntroller.class);是为了定位日志
2.在方法里打日志
LOGGER.info("日志信息");
2.2如何将日志信息存储到文件中
两种方式不能同时存在---使用其中的一种即可
1.logging.file.path:
指定日志文件的路径,不指定名称,默认的名称是spring.log
logging:
file:
path: C:\demo\hello3 #日志文件路径
2.logging.file.name:
可以指定指定日志文件的路径和日志文件的称
logging:
file:
name: C:\demo\hello3\hello.log #日志文件名带路径
在此盘的路径中就会存储日志文件信息
2.3如何设置日志级别
日志的级别
TRACE<DEBUG<INFO<WARN<ERROR<FATAL 优先级别
SpringBoot默认级别
默认日志级别是INFO,比INFO级别小的日志不显示,比INFO级别大的显示
如何设置日志格式
logging.level
两种级别
1.root级别
logging:
level:
root: warn #root:代表的是项目所有日志
如果我们将root日志级别设为warn,则项目的所有INFO日志不再显示,只能显示warn及以上级别的日志
2.package级别
代表指定包下的日志对应的日志级别,不是这个包下才用的是默认的INFO日志级别
两种级别可以同时设置
2.4如何设置自己的日志格式
日志格式有哪些??
#%d{yyyy/MM/dd-HH:mm:ss:SSS}日志输出时间
#[%thread]:输出日志的线程名字
#%-5level :日志级别 并且使用5个字符靠左对齐
#%logger-:日志输出者的名字
#%msg :日志消息 %n换行
[email protected]注解
3.1作用:
加载属性文件.properties
3.2如何使用注解:在类上写注解 //classpath:配置文件的位置
//person.properties:配置文件的名称
@PropertySource("classpath:person.properties")
注意:此三注解须同时用,单独没效果
@Component
@ConfigurationProperties(prefix = "person") //上配置文件找前缀是person的
@PropertySource("classpath:person.properties")
[email protected]
作用
导入spring的配置文件,让配置文件的内容生效,,比如applicationContext.xml是配置文件
使用步骤
1.写一个业务类HelloService,写一个方法
2.在src/main/resource下创建beans.xml,在里面配置bean节点
3.在主类上写注解@ImportReSource(locations="classpath:beans.xml"),导入spring的配置文件,让配置文件的内容生效
4.在测试类先注入ApplicationContext,然后调用applicationContext的getBean(“bean名称”)从spring容器得到bean,调用bean的方法
5.配置类
5.1什么是配置类
如果一个类在类上标注有@Configuration注解,我们称该类是一个配置类
5.2配置类的特点
1.配置类本身被spring容器管理
2.配置类相当于spring中的配置文件
5.3配置类的使用
1.写一个类,在类上写注解@Configuration
2.在类里面写方法,在方法写@Bean注解,
1.方法名称是bean名称,相当于bean的id
2.方法的返回值类型,相当于bean节点的class
3.方法的返回对象纳入spring容器管理
6.配置文件占位符
6.1什么是占位符
在属性值中使用${}代表活的数据
${}代表占位符
6.2常用的占位符 ----请前往person.properties验收哟
${random.uuid} :uuid
${random.int} :生成随机整数
${random.int(10)}: 代表10以内的随机整数
${random.int[30,60]}:30-60之间的随机整数
${helloWord:hello} :如果helloWord不存在则,就显示默认值hello
${person.lastName}: 取得之前配置好的属性值
7.profile
7.1定义:
是spring对不同环境提供不同的配置支持,可以通过**指定参数的方式快速的**环境
7.2多profile文件
默认配置文件(也称为主配置文件):application.properties/yml
多profile:application-{profile}.properties/yml
比如:
1.开发环境的配置文件:application-dev.properties
2.生产环境配置文件:application-prod.properties
7.3如何**配置文件
在主配置文件application.properties指定spring.profiles.active=dev
7.4yml多文档块
使用---作为每个文档的分块 并且**
7.5profile**方式
1.主配置文件中**
spring.profiles.active=prod
2.多文档块**
3.执行程序时使用program Arguments设置:(命令行**)
--spring.profiles.active=dev进行**
7.6命令行窗口**
在运行时传入命令行的参数
步骤:
1.双击package 打jar包
2.找到jar 所在的文件夹,在该文件夹下打开命令行窗口: