Spring / MVC webapp中Controller和Model Java类的命名约定?

时间:2012-01-27 19:10:23

标签: java web-applications spring-mvc

假设我的控制器和模型中有“设置”类,在我的Java / Spring / MVC webapp中。现在,在/controllers//models/中,我应该......

1)...将它们命名为Settings.java

2)...将他们命名为SettingsController.javaSettingsModel.java或类似名称?

我很好奇典型的命名约定以及个人体验中使用的命名约定。随意引用您自己的webapp项目来代替我的,可能很差的例子。

这是我的第一个MVC webapp,我正试图感受它。

7 个答案:

答案 0 :(得分:26)

我建议你打电话给你的控制器SettingsController并模拟Settings。这是因为模型实际上包含你的数据。您的模型包含哪些数据?答案是:设置。所以,称之为设置。

控制器是不同的故事。这是一个处理数据的类。可能有许多类处理设置:SettingsBuilderSettingsFactorySettingsUtilSettingsService等。这一个是控制器,所以称之为SettingsController。< / p>

答案 1 :(得分:5)

由于模型类描述了“真实”实体,因此最好通过名称来调用它们,因此在您的情况下它将是Settings.java

另一方面,

控制器只是使用特定架构(MVC)的副产品,因此它获得Controller后缀,在您的情况下变为SettingsController.java

例如,如果您使用jsf执行了应用程序,您仍然可以将Settings.java作为模型,但SettingsBean.java作为控制器(显然这只是另一种惯例,您可以随意调用它)

答案 2 :(得分:3)

为他们命名SettingsController.javaSettings.java

答案 3 :(得分:2)

我选择了Settings.java和SettingsController.java。

* Controller遵循Spring的控制器命名约定。此外,它让程序员立即了解该类的功能。

一般来说,我总是喜欢POJO的简单名称,Settings.java似乎符合这个要求。

答案 4 :(得分:1)

我认为以下风格是最连贯的

com.company.web.controller
               +-  SettingsController.java
com.company.web.model
               +-  Settings.java

原因是Settings是一个完全描述它是什么的名称,而SettingsController描述它是一个处理Settings个对象的控制器。

答案 5 :(得分:1)

我必须同意以前的海报,模型应该只是实体的名称,然后任何形容词都应该是实体的后缀,所以设置和设置控制器这是我经常采取的机制。我也使用设置作为网页的名称。

答案 6 :(得分:0)

我会用

控制器为

com.company.controller.SettingsServlet.java,模型类为com.company.model.Settings.java

您可以使用程序包命名com.company.controller来指示Controller类的控制器方面,但它毕竟是一个Servlet,并且与此命名无关。从技术上讲,控制器可以是任何类型的控制器。模型类也用它的包名称表示。

单凭信仰就是盲目追随 - 本杰明富兰克林