play plugin插件 实现类似Servlet中的拦截器效果

来源:互联网 发布:什么是对零件的编程 编辑:程序博客网 时间:2024/06/07 06:40
play plugin和module的区别见:play Modules & 使用成熟的Java模块、框架、Spring & 模块和插件的区别

创建插件的步骤:
1,创建一个从play.PlayPlugin继承的类,然后覆盖其中的一些方法。
2,在conf目录下的play.plugins文件中注册这个插件,格式如:1003:myPackage.MyPlugin.这里的数字是插件被调用的顺序。建议设置的值都大于1000,当然如果想要在play framework插件被调用之前调用自己的插件,也可以设置小于1000的值,具体设置成多少参考下面的play内置插件的调用顺序。[内置插件注册在play安装目录\framework\src\play.plugins]
Java代码  收藏代码
  1. 0:play.CorePlugin  
  2. 100:play.data.parsing.TempFilePlugin  
  3. 200:play.data.validation.ValidationPlugin  
  4. 300:play.db.DBPlugin  
  5. 400:play.db.jpa.JPAPlugin  
  6. 450:play.db.Evolutions  
  7. 500:play.i18n.MessagesPlugin  
  8. 600:play.libs.WS  
  9. 700:play.jobs.JobsPlugin  
  10. 100000:play.plugins.ConfigurablePluginDisablingPlugin  


参考play.PlayPlugin Javadoc,你可以轻松地实现在需要的时候对请求进行拦截,如下述的时机:
  • 请求、响应生命周期
  • binding绑定过程
  • 应用程序的启动和关闭
  • classload加载的时候

http://stackoverflow.com/questions/4699250/how-to-extend-the-playframework
0 0