小知识

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


小知识_第1张图片
示例1.png
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 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 interceptUrls;
}

你可能感兴趣的:(小知识)