1.请求参数非空校验
/**
* 此处@NotBlank和controller请求中@Validated配合使用
*/
@ApiModelProperty(value = "请求明文", required = true)
@NotBlank
private String decryptReq;
@ApiOperation(value = "查找")
@RequestMapping(value = "/query", method = RequestMethod.POST, produces = {MediaType.APPLICATION_JSON_VALUE})
@ResponseBody
public CryptedRespVO query(@RequestBody @Validated CryptedReqVO request) {
return cryptService.crypt(request);
}
2.@Slf4j没有info,debug等方法
*操作完重启Idea
3.reentrantLock的公平锁和非公平锁
*公平锁是指当锁可用时,在锁上等待时间最长的线程将获得锁的使用权。而非公平锁则随机分配这种使用权。
ReentrantLock lock = new ReentrantLock(true);//公平锁
ReentrantLock lock = new ReentrantLock(false);//非公平锁,默认false
4.springCloud拦截器
//编写拦截器业务
@Component
public class UnloginInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
return false;
}
}
//添加拦截器
@SpringBootConfiguration
public class YoungWebMvcConfig implements WebMvcConfigurer {
@Autowired
IntercepterConfig intercepterConfig;
@Autowired
UnloginInterceptor unloginInterceptor;
@Override
public void addInterceptors(InterceptorRegistry registry) {
List<String> intercepterUrls = intercepterConfig.getInterceptUrls();
// String[] patterns = intercepterUrls.toArray(new String[intercepterUrls.size()]);
registry.addInterceptor(unloginInterceptor).addPathPatterns(intercepterUrls);
}
}
young:
interceptUrls:
- /member/**
- /product/**
@Data
@RefreshScope
@Configuration
@ConfigurationProperties(prefix = "young")
public class IntercepterConfig {
private List<String> interceptUrls;
}