2013-02-14 45 views
1

中删除通配符域类导入我正在查看使用grails 2.1.0的现有应用程序。我应该在我的gsp的

我在主布局视图中注意到以下内容(所有其他视图使用此布局)。

<%@ page import="com.mysite.domains.*" %> 

此文件夹下的一些域类直接用在应用程序中的视图中。但这些观点中肯定没有使用或不需要它们。例如类别:

<g:select name='category' value="${beanInstance?.category?.categoryKey}" 
       from='${Category.findAllByActive(true)}' optionValue="name" 
       optionKey="categoryKey"></g:select> 


是Grails的足够聪明,它仅导入他们如果知道他们在currernt视图中使用?

或者我应该删除这个通配符导入并单独指定每个需要的类?

感谢

+1

请不要这样做,但使用Taglib :)你不应该从视图访问数据库。 – Chris 2013-02-14 15:06:39

回答

2

的GSP的最终被编译成延伸org.codehaus.groovy.grails.web.pages.GroovyPage类。 页面导入指令被转换为常规包成员导入指令。导入只会告诉编译器在哪里查找符号,因此导入包中的所有类不会有特殊的开销。

相关问题