SpringBoot成长笔记(二)配置文件及日志

目录

一、配置文件

二、日志配置


一、配置文件

  • 多个配置文件

#修改tomcat的配置
server.port=8089
server.tomcat.uri-encoding=utf-8

#多个配置文件
spring.profiles.active=dev
  • 自定义文件

SpringBoot新建工程的时候默认生成了application.properties文件,此文件可以自定义一些我们需要使用的配置参数,也可以用来修改springboot默认的参数。还有一种是已yml为后缀的配置文件。

#自定义属性
tcp.switch=true

 新建RestController,实现restful接口,然后浏览器中验证自定义的参数

package com.mhm.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 *
 * Created by MHm on 2018/8/7.
 */
@RestController
public class AlarmController {
    @Value("${tcp.switch}")
    private String tswitch;

    @RequestMapping(value = "/alarmSwitch")
    public String isSwitch(){
        return tswitch;
    }
}

运行java程序, 浏览器中输入restful接口的地址http://localhost:8089/alarmswitch

SpringBoot成长笔记(二)配置文件及日志_第1张图片

  •  

二、日志配置

  • 默认日志配置

SpringBoot默认使用的是logback的日志

#日志配置
logging.level.root=debug

SpringBoot成长笔记(二)配置文件及日志_第2张图片

代码中增加日志

SpringBoot成长笔记(二)配置文件及日志_第3张图片

 上面的代码中总是需要增加这样的代码,可以使用注解的方式替换,需要安装lombok插件

private final static Logger logger = LoggerFactory.getLogger(AlarmController.class);

 增加lombok的依赖,Reimport。

                
		
			org.projectlombok
			lombok
			1.16.20
			true
		
  •  自定义日志配置

日常的项目中为了好扩展,基本上使用自定义的日志配置文件去配置

logback:logback-spring.xml, logback-spring.groovy, logback.xml, logback.groovy

log4j:log4j-spring.properties, log4j-spring.xml, log4j.properties, log4j.xml

log4j2:log4j2-spring.xml, log4j2.xml

推荐使用*-spring.*的配置方式,如果是springboot制定的文件名则不需要初始化,其他的需要初始化

  1. logback-spring.xml配置


    springbootdemo1
    
    
    
    
    

    
    
    
        
            %d{yyyy-MM-dd HH:mm:ss} %-5level %logger{36} - %msg [%thread] %n
        
       
    

    
    
        
            INFO
        
        
            ${log.path}/${log.proj}_info.%d{yyyy-MM-dd}.log
            30
            ${total.size}
        
        

        
            ${max.size}
        
        
            %d{yyyy-MM-dd HH:mm:ss} %-5level %logger{36} - %msg [%thread] %n
        
    

    
        
            ERROR
        
        
            ${log.path}/${log.proj}_error.%d{yyyy-MM-dd}.log
            30
            ${total.size}
        
        
            ${max.size}
        
        
            %d{yyyy-MM-dd HH:mm:ss} %-5level %logger{36} - %msg [%thread] %n
        
    

    
        
    

    
        
        
        
    

log4j2的配置,需要去掉spring-boot-starter-logging的依赖,增加log4j2的依赖。

                
		
			org.springframework.boot
			spring-boot-starter
			
				
					org.springframework.boot
					spring-boot-starter-logging
				
			
		
		
		
			org.springframework.boot
			spring-boot-starter-log4j2
		

手动添加log4j2的依赖,如果有springboot版本的冲突,可以直接饮用log4j2的jar包。

                
		
			org.apache.logging.log4j
			log4j-api
			2.8.2
		
		
			org.apache.logging.log4j
			log4j-core
			2.8.2
		
		
  • log4j2-spring.xml的配置


    
        ./log
        50MB
    

    
    
        
        
            
            
            
            
        
        
        
            
            
            
        
        
        
            
            
            
        
        
        
            
            
            
        

    
    
        
            
        
        
            
        
        
            
        
       
        
            
            
            
            
        
    

代码演示

package com.mhm.controller;

import lombok.extern.log4j.Log4j2;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * Created by MHm on 2018/8/7.
 */
@Log4j2
@RestController
public class CarController {
    @RequestMapping(value = "/car")
    public String isSwitch(){
        log.trace("log4j2 trace");
        log.debug("log4j2 debug");
        log.info("log4j2 info");
        log.warn("log4j2 warn");
        log.error("log4j2 error");
        return "";
    }
}

 原因结果

SpringBoot成长笔记(二)配置文件及日志_第4张图片

 

三、小结

思考问题:

1、springboot配置文件的加载顺序。

2、源码下载

https://github.com/289562326/springbootdemo2

 

你可能感兴趣的:(3,SpringBoot)