原来的两种写法都不好最好把return true放在最后
各种没有通过检查的if语句里面写return false
这样以后追加检查条件的时候不用大改程序结构【相当于画流程图的时候最左边永远画成立的条件,而每种不成立的条件都画到右边的感觉】

解决方案 »

  1.   


    @ResponseBody
    @RequestMapping("checkAreaCode")
    public boolean checkAreaCode(HttpServletRequest request) {
    String qw = request.getParameter("qw");
    if (adminService ==null ) {
    // TODO 处理
    }
    return adminService.selectByAreaCode(qw) > 0;
    }还有就是应该加log。
      

  2.   

    入口参数的检查(比如判断request是否为null等无效值)异常处理线程安全性(多线程同时调用的时候会不会有意想外的动作)程序注释
      

  3.   


    adminService有可能为null,要判断下,如果是null,根据业务逻辑处理。
    adminService.selectByAreaCode(qw) > 0 简单判断即可,如果不将此值记录日志是不需要赋值给一个临时变量的,只用了一次。
      

  4.   


    if(qw == null || qw.trim().equals("") ) {
        return false;
    }
    return adminService.selectByAreaCode(qw) > 0;代码评审是对代码的安全性出发而进行的检查,至于其它的异常处理不在评审范围内吧