一般动作
为什么开发gsp页面,或者在grails console里写调试代码时,bropen.toolkit.utils.StringUtils 等常用的类都不需要import呢?是自动导入的吗?
另外,我也比较懒,还可以配置自动导入其他类吗?比如我写了一个 a.b.c.d.e.f.FoobarUtils,希望直接在gsp里使用,而不用记那段长长的包名了。
页面和console自动导入类,是通过修改grails源代码实现的,如果你了解jsp的编译过程(gsp也是基本一样的),就应该知道就是先把解析好的页面文件全部转成java代码,然后再吧java代码编译成字节码。
因此,了解了这些,在将gsp转换成groovy/java代码后,在转换的代码上加几句import其实是件很简单的事情了。
为了将偷懒进行到底,我们还提供了配置方法,只需要在工程的Config.groovy中,加入类似下面的配置就可以自动导入自定义的类了。
当然,其中lazybone可以自定义的,比如 app 啥的。
另外,在bro-toolkit、bro-framework等各个插件中,我们都做了一些配置,自动导入了一些最常用的类,比如很多的工具类,还有Employee、Organization、User等常见Domain类。
想知道明细的话,可以在console中使用如下代码查看:
BroToolkit 2.8+