在此之前我们来谈谈JFinal
JFinal 是基于Java 语言的极速 web开发框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有Java语言所有优势的同时再拥有ruby、python等动态语言的开发效率。
JFinal 采用微内核全方位扩展架构,全方位是指其扩展方式在空间上的表现形式。JFinal由Handler、Interceptor、Controller、Render、Plugin五大部分组成。
所以今天我们就讲讲其一:Handler。
JFinal的 Handler是 AOP + 责任链 模式的一个变种,JFinal对action及interceptor处理自身也是一个Handler名叫ActionHandler,可见其功能之强大。平时开发的时候一般不需要使用,当Action与Interceptor还不够用的时候可以考虑Handler上场。另外Handler可以替代Filter,你无需在web.xml 中再声明Filter了。
废话不多说了,赶紧进入正文
JFinal 是一个近乎零配置,基于spring MVC研发的框架,操作简单。节省代码,适用于所有web项目。适合中小型项目开发。10分钟写出一个页面的增删改查。。app,服务端也可以。只需一个简单的继承JFinalConfig 的配置类来配置JFinal所需的就行了。然后把它配置到web.xml中就可以了,其他的Interceptor、Controller、Handler只在该配置类里处理就行了,无需再在web.xml中配置了
下面是将该配置类配置到web.xml的示例:
<filter>
<filter-name>jfinal</filter-name>
<filter-class>com.jfinal.core.JFinalFilter</filter-class>
<init-param>
<param-name>configClass</param-name>
<param-value>com.uniasia.JFinalProjectConfigurer</param-value>
</init-param>
</filter>
下面简要说说JFinalProjectConfigurer.java 这个类 因为该类继承JFinal 框架的抽象 JFinalConfig 类,该类有5个抽象,所以要实现这5个抽象方法
/**
* Config constant
*/
public abstract void configConstant(Constants me);
/**
* Config route
*/