@ConfigurationProperties(prefix="user") public class User{ private String username; private Integer age; private Date birthday; } @ConfigurationProperties等同于@Value(${user.username})等
@Validated配合@ConfigurationProperties支持jsr303的数据校验。
@PropertySource("classpath:/data/user.properties")
可以用来指定注入的文件名,单独引用文件注入,只能使用.properties文件
@Configuration(proxyBeanMethods = false)
标记了@Configuration, Spring底层会给配置创建cglib动态代理。作用:就是防止
每次调用本类Bean方法而重新创建对象,Bean是默认单例的。
日志
方式1: @Slf4j --->Lombok依赖 不建议使用,需要插件
方式2:
Logger logger = LoggerFactory.getLogger(当前类Application.class);
logger.trace("跟踪");
设置某个包下的日志级别
logging.file.path不能指定文件名称,只能指定文件路径,默认文件名称是spring.log
MockMVC
请求拦截器
public class TimeInterceptor implements HandlerInterceptor{ LocalDateTime begin; @Override public boolean preHandle(HttpServletRequest request,HttpServetResponse response,Object handle){ // begin = LocalDateTime.now(); return true; } @Override public void postHandle(HttpServletRequest request,HttpServletResponse response,Object handler){ LocalDateTime end = LocalDateTime.now(); //计算时间差 Duration between = Duration.between(begin,end); //获得时间差毫秒 long l = between.toMillis(); }
@CrossOrigin
在被跨域请求的方法上加上此注解,可以支持跨域请求。
也可以配置请求来源,允许请求来源的域访问。
@CrossOrigin("http://xxxx")
监听器