使用Spring @Controller构造型保持方法可见性的最佳实践

时间:2013-07-10 14:44:55

标签: java spring spring-mvc coding-style pmd

我当前工作的项目使用私有访问修饰符来处理MVC控制器的方法:

@Controller
public class HelloWorldController {

    @RequestMapping("/helloWorld")
    private ModelAndView helloWorld() {

我已经集成了PMD,他的报告有很多:

/src/main/java/com/web/controller/SignalController.java:91: Avoid unused private
                                            methods such as 'handleNewRequest()'.

因此,我认为将控制器的方法可见性更改为 public ,而不是禁用有用的PMD规则。

是否有任何理由保持控制器的方法私有

1 个答案:

答案 0 :(得分:5)

你将自己私有化,将自己甩在脚下:

  1. 它被PMD和IDE视为未使用(并且,传统上,它也调用了所有其他私有方法)。因此,您或同事可能会错误地删除实际使用的私有方法。
  2. 这使得单位 - 测试它们变得更加困难。
  3. 这是非常规的,使您的代码看起来对经验丰富的Spring开发人员来说很奇怪。
  4. 它们在逻辑上是公开的,因为它们是由类和包之外的代码调用的。