最近review别人代码的时候,看到了一些@Autowired不一样的用法,觉得有些意思,特定花时间研究了一下,收获了不少东西,现在分享给大家。
也许@Autowired比你想象中更强大。
最近review别人代码的时候,看到了一些@Autowired不一样的用法,觉得有些意思,特定花时间研究了一下,收获了不少东西,现在分享给大家。
也许@Autowired比你想象中更强大。
一般来说,开发一个项目会实现很多个服务接口,以前的做法是可以将全部接口糅合一起对外提供服务,但在现在,越来越提倡微服务理念,这种做法明显与微服务的理念背道而驰。更合理的做法,就是对项目进行服务拆分,使项目被拆分成多个小的服务,而服务采用面向接口的编程,这将极大的有利于项目的扩展和团队分工。
我们有这样的一个springboot项目。项目分为开发、测试、生产三个不同阶段(环境),每个阶段都会有db、ftp、redis等的不同配置信息。我们可以使用spring.profiles.include来实现三种不同环境的一键切换。
配置了拦截器后,Jackson的全局配置失效!!!
全局配置、自定义字段/属性名、忽略某个字段/属性
写程序,难免会遇到一些异常。遇到了,处理了,给与友好提示就ok,Spring Boot 默认自己就处理了异常,只是感觉有点不友好:
浏览器访问:

Spring Boot 的拦截器使用非常方便,我们只需要以下两步:
- 自定义类实现
HandlerInterceptor并注解@Component让Spring管理;- 自定义一个配置类实现
WebMvcConfigurer,注解@Configuration让Spring当作配置类管理;
404等异常时返回JSON字符串,并解决swagger前端资源(js/css/img),不能正常访问的问题
我们基本上都知道 Spring 使用的是 logback 为日志配置的。
如果在你的项目中启用了你自己定义的 logback.xml 配置的话,本来是彩色的日志输出就变成黑白色了。
SpringBoot本身就内置了日志功能,然而想要输入想要的日志,并且输出到磁盘,然后按天归档,或者日志的切分什么的,自带的日志仅仅具有简单的功能。