`
desert3
  • 浏览: 2160861 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
社区版块
存档分类
最新评论

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

 
阅读更多
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]
0:play.CorePlugin
100:play.data.parsing.TempFilePlugin
200:play.data.validation.ValidationPlugin
300:play.db.DBPlugin
400:play.db.jpa.JPAPlugin
450:play.db.Evolutions
500:play.i18n.MessagesPlugin
600:play.libs.WS
700:play.jobs.JobsPlugin
100000:play.plugins.ConfigurablePluginDisablingPlugin


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

http://stackoverflow.com/questions/4699250/how-to-extend-the-playframework
分享到:
评论

相关推荐

    自定义plugin插件实现phonegap与Android交互

    在"自定义plugin插件实现phonegap与Android交互"这个主题中,我们主要关注的是如何通过编写自定义插件来打通JavaScript和Android之间的通信壁垒。在PhoneGap中,Plugin是连接Web层和Native层的桥梁,它们是用Java...

    mybatis使用拦截器实现分页操作

    在MyBatis中,我们可以通过实现`org.apache.ibatis.plugin.Interceptor`接口并重写`intercept`方法来创建一个自定义拦截器。 分页是数据库操作中常见的需求,传统的做法是在每个查询方法中添加分页逻辑,但这会导致...

    MyBatis拦截器分页与动态修改SQL及其参数值

    1. **MyBatis拦截器**:MyBatis提供了一种插件机制,即拦截器(Interceptor),它基于Java的动态代理,可以在SQL执行前或执行后进行干预。例如,我们可以创建一个自定义的拦截器,来实现特定的功能,如日志记录、...

    struts1.2拦截器使用插件

    通常,插件的源码会包含拦截器实现、配置文件以及必要的文档说明。 总的来说,Struts1.2的拦截器机制是其强大之处,它允许开发者以模块化的方式扩展框架功能,提高了代码的可维护性和复用性。通过合理地利用拦截器...

    Gif Play Plugin.zip

    该插件包含一个名为"Gif Play Plugin.unitypackage"的文件,这是Unity的标准资源包格式,导入后可以直接在Unity编辑器中使用。 三、插件工作原理 1. **GIF解析**:插件首先读取GIF文件的头部信息,获取帧数、延迟...

    webplugin 视频插件

    此时,Webplugin视频插件通过提供这些格式的解码器,使浏览器能够播放这些文件。 Webplugin视频插件还可能包含额外的特性,例如: 1. **跨平台兼容性**:确保视频在不同的操作系统(如Windows、MacOS和Linux)以及...

    分页插件内含需要配置的拦截器

    6. 拦截器配置:"分页插件内含需要配置的拦截器"表明PageHelper通过拦截器机制工作,它会拦截MyBatis的查询操作并自动处理分页逻辑。因此,确保配置的拦截器正确无误是使用PageHelper的前提。 总的来说,PageHelper...

    Carplay Plugin

    在描述中提到"Apple Carplay Communications Plugin (Slightly modified)",这表明我们正在讨论的是一款经过轻微修改的CarPlay通信插件。这样的修改通常意味着开发者可能已经对原版插件进行了定制化开发,以适应特定...

    MyBatis拦截器及分页插件

    intercept方法是拦截器要执行的方法,plugin方法是拦截器用于封装目标对象的,setProperties方法是用于在MyBatis配置文件中指定一些属性的。 在定义自己的Interceptor时,需要实现plugin方法和intercept方法。在...

    Mybatis分页拦截器

    在mybatis-3.1.1和mybatis-3.0.4这两个版本中,分页拦截器的实现基本相同,主要依赖于Mybatis的插件机制。Mybatis允许开发者通过实现Interceptor接口创建自定义插件,然后在mybatis-config.xml配置文件中注册这些...

    Mybatis拦截器记录数据更新历史记录到MongoDB

    在“Mybatis拦截器记录数据更新历史记录到MongoDB”这个项目中,我们需要创建一个自定义的拦截器类,该类需要实现`org.apache.ibatis.plugin.Interceptor`接口并覆写`intercept`方法。在这个方法里,我们可以捕获到...

    Mybatis拦截器介绍及分页插件

    虽然Mybatis本身没有内置的分页功能,但可以通过实现拦截器来达到分页的目的。以下是一种典型的分页插件实现思路: 1. **定义拦截器**:首先,需要定义一个实现了`Interceptor`接口的类,比如命名为`...

    通过Mybatis拦截器自动定位慢SQL并记录日志

    下面我们将详细介绍如何通过Mybatis拦截器实现这一功能。 首先,了解Mybatis拦截器的基本概念。Mybatis拦截器(Interceptor)是一种插件机制,它允许我们在Mybatis执行SQL语句之前或之后进行自定义操作,比如统计...

    Maven使用tomcat8-maven-plugin插件.docx

    Tomcat 是一个流行的 Web 服务器,Maven 提供了一个插件 tomcat8-maven-plugin 来实现 Maven 项目与 Tomcat 服务器的集成。下面我们将详细介绍如何使用 tomcat8-maven-plugin 插件。 tomcat8-maven-plugin 插件的...

    32个常用Origin.Plugin插件.rar

    1. 数据分析:Origin.Plugin中的插件提供了丰富的数据处理工具,如统计分析(如t检验、方差分析)、信号处理(滤波、傅立叶变换)和曲线拟合(多项式、指数、对数等)。这些工具可以帮助用户快速有效地处理实验或...

    struts2 拦截器

    3. **注册拦截器**:将自定义拦截器加入到`struts-default`或`struts-plugin`拦截器栈中,或者创建新的拦截器栈并应用到特定Action。 ### 四、Struts2内置拦截器 Struts2提供了一些内置的拦截器,如: 1. **...

    linux下C 插件(plugin)实现技术

    在Linux系统中,C语言插件(plugin)的实现技术是一项关键的软件开发技能,它允许程序在运行时动态加载和卸载代码模块,增强了软件的可扩展性和灵活性。插件通常以动态链接库(.so文件)的形式存在,使得主程序可以...

    TomcatPlugin eclipse插件

    【标题】"TomcatPlugin eclipse插件"是一个专门为Eclipse集成开发环境设计的插件,它的主要功能是方便开发者在Eclipse中管理和调试Tomcat服务器。这个插件极大地提升了Java Web应用开发的效率,因为它允许用户直接在...

    Mybatis拦截器介绍及分页插件示例

    使用拦截器实现分页功能是一种常见的应用场景。下面是一个简单的分页插件示例: 假设我们想要实现一个基于`Executor`的分页拦截器,可以在`intercept`方法中修改SQL语句来添加分页条件。为了简化演示,我们将只关注...

Global site tag (gtag.js) - Google Analytics