如何扩展Playframework?
-
11-10-2019 - |
题
有时有必要扩展一个框架。有时,有必要挂接请求/响应生命周期,例如,参数绑定或编写安全模块。如何在PlayFramework 1.X中完成这件事?
解决方案
有两种扩展播放1.x的方法。首先,您可以编写自己的模块。这是详细描述的 这里. 。如果您想提供诸如ITEXT之类的库或提供特殊的身份验证机制,这将很有用。
第二种方法是写一个 PlayPlugin
. 。这通常是在模块中完成的,但这不是必要的条件。写一个 PlayPlugin
需要两个步骤:
- 写一个扩展课程的课程
PlayPlugin
并覆盖其中的一些 方法, ,例如称为myPackage.MyPlugin
. - 注册您的插件。这是通过创建名称的文件来完成的
play.plugins
并将其放入班级路径。该文件必须包含一个类似的行1003:myPackage.MyPlugin
.
该数字定义了调用插件的顺序。我建议使用ID>1000。如果您希望它在框架插件之前加载,请查看 这里 (ID自1.1.1以来有效)。
而已。要了解您可以使用插件可以做什么的感觉 Javadoc. 。您可以钩住:
- 请求/响应周期
- 结合过程
- 申请开始/停止
- classloading
不幸的是,Javadoc文档很少,但是请不要犹豫地研究Playframework本身的代码。这很容易理解,并为您提供好主意。
不隶属于 StackOverflow