Grails 插件:轻松扩展功能
在软件开发中,很少有工具能完全满足我们的所有需求,Grails 框架也不例外。不过幸运的是,有大量的 Java 工具和库可以帮助我们实现几乎任何想要的功能。由于 Grails 本质上是一个基于 Java 的框架,所以几乎可以使用任何现有的 Java 库。很多 Java 库都非常成熟和健壮,因此我们没必要重新造轮子。
虽然可以直接使用 Java 库,但在 Grails 和这些库之间添加一个适配器会带来很大好处,它能让库的使用更简单,设置也更快捷。这就是 Grails 插件系统的目的,其核心思想是将各种功能打包成模块,框架可以加载这些模块并将其集成到系统中。这些功能可能包括全文搜索、标签云或炫酷的新 UI 技术。实际上,Grails 的很多特性本身就是以插件的形式实现的,包括 GORM。
1. 利用他人的成果
在什么情况下需要安装插件呢?当你遇到一个功能需求,它并非特定于你的应用程序,也不直接与业务逻辑相关时,就可以寻找现有的插件来完成这项工作。如果你在普通 Java 项目中会使用单独的库或工具来实现某个功能,那么在 Grails 中使用插件可能是最佳解决方案。
以 Hubbub 应用为例,你可能希望从应用的不同部分发送电子邮件,比如用户注册模块或每日邮件摘要模块,但发送邮件并非 Hubbub 的核心功能,而且这是不同类型应用中常见的功能,因此它是一个理想的插件应用场景,实际上已经有一个邮件插件可以满足这个需求。
1.1 查找插件
查找插件主要有两个信息来源:Grails 中央插件仓库和 Grails 官方网站。
- Grails 插件仓库