在Spring Boot中,可以使用以下方法在控制台中隐藏绑定参数日志:
logging.level.org.springframework.web.method.annotation.UriUtils=ERROR
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.ImportResource;
import org.springframework.context.annotation.PropertySource;
import org.springframework.boot.autoconfigure.web.ErrorMvcAutoConfiguration;
@Configuration
@EnableAutoConfiguration(exclude = { ErrorMvcAutoConfiguration.class })
@ImportResource("classpath:/spring/app-config.xml")
@PropertySource(ignoreResourceNotFound = true, value = {
"classpath:/application.properties", "file:${config.location}/application.properties" })
public class Application extends SpringBootServletInitializer {
public static void main(String[] args) {
new SpringApplicationBuilder().sources(Application.class).run(args);
}
}
将logging.level.root=INFO替换为以下代码:
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.core.env.ConfigurableEnvironment;
import org.springframework.core.env.StandardEnvironment;
@SpringBootApplication
public class DemoApplication extends SpringBootServletInitializer {
public static void main(String[] args) {
ConfigurableApplicationContext context = SpringApplication.run(DemoApplication.class, args);
ConfigurableEnvironment environment = context.getEnvironment();
((StandardEnvironment) environment).setSystemPropertiesMode(
StandardEnvironment.SYSTEM_PROPERTIES_MODE_OVERRIDE);
System.setProperty("logging.level.org.springframework.web", "ERROR");
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(DemoApplication.class);
}
}
此代码禁用Spring boot中的所有WARN及以下消息,并将日志级别设置为ERROR。这将省去大量的绑定参数日志。