grails - Controller 和服务的前两个字母大写

标签 grails

我在 Grails 2.5.3 中有一个名为 EQuestionController 的 Controller 和一个名为 EQuestionService 的服务。

当我调用 Controller 时,我需要将其作为 /EQuestion 执行,而我原本希望将其调用为 /eQuestion,但在这种情况下会出现 404 错误.

当我将服务注入(inject) Controller 时,当我期望将其注入(inject)为 def eQuestion 时,我需要将其作为 def EQuestion 执行,但在本例中它是

用前两个字母大写来命名 Controller 或服务不是正确的吗?

最佳答案

此命名行为在 java bean 规范 ( http://download.oracle.com/otndocs/jcp/7224-javabeans-1.01-fr-spec-oth-JSpec ) 中定义

Thus when we extract a property or event name from the middle of an existing Java name, we normally convert the first character to lower case. However to support the occasional use of all upper-case names, we check if the first two characters of the name are both upper case and if so leave it alone.
So for example,

“FooBah” becomes “fooBah”  
“Z” becomes “z”
“URL” becomes “URL”

因此,EQuestionService 的 bean 变为 EQuestionService

关于grails - Controller 和服务的前两个字母大写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38048105/

相关文章:

grails - Grails可以通过*方法*将请求路由到其他 Controller 吗?

unit-testing - 为什么在单元测试中,域类的逻辑之前和之后会收到 “No such property”?

java - 如何从 Grails 应用程序使用 JNI native 库

grails - 如何在Grails中访问两个数据库

grails - Grails中的禁用版本列会影响性能吗?

grails - 如何使用 Grails Spring Security Core 设置 Google 登录?

javascript - 如何通过 JavaScript 手动触发客户端 Grails 验证?

java - 如何将 Grails 域类映射到 DTO?

grails - 在Grails Gorm上更新主键值

用于 FieldErrors 的 Grails JSON 编码器