Easyjweb-0.7.0
在
easyjweb-0.6
的版本上做了一些改进:
主要的功能改变有:
1,
去掉了
0.6
版本比较难于使用的
intercpetor
,增加了在执行
Action
前后的
intercptor
;
2,
增加了主题功能的支持;
3,
增加了基于
interceptor
的权限或者安全控制接口;
4,
增加了
ErrorHandler
来统一管理框架中的错误的处理逻辑;
5, 增加了ForbitRep机制来禁止用户重复提交表单;
6,
改进了
hello
应用;
使用方法:
1,
interceptor
是需要实现
ActionIntercptor
接口,该接口提供了在执行
action
之前和之后的拦截操作;并且提供了三个该接口的最简单的实现,你可以选择继承来实现之前,之后,或者两者的拦截器;在
hello
应用中,我们实现了一个
TimeInterceptor
,用来控制在一定时间范围内的访问请求;
2,
theme
的功能,你可以根据自己的需要实现
IThemeManager
接口和
ITheme
接口。
IthemeManager
接口是需要根据某种策略从
request
中返回一个
ITheme
对象。
ITheme
对象中定义了返回到视图中的样式的
Map
。我们提供了一个通过
properties
文件来简单的实现主题的切换的类,你只需要把自己不同的样式以
properties
文件保存为
theme_themeName.properties
文件,并在请求中使用
theme=themeName
就可以获得该主题的样式,并且在没有改参数请求的时候,保持上一个请求的样式。在
hello
应用中我们也实现了一个这个功能的简单演示。
3,
权限控制是基于
interceptor
的,你只需要实现
Icondition
接口来实现自己对一个请求的判断,如果不通过抛出一个
SecurityException
即可,通过返回
true
。同样我们实现了一个基于
properties
文件的类,你需要把一个
url
样式和一个
Icondition
对象联系起来,保存到
web-inf /url2ConditionMap.properties
文件。在
hello
实例中,我们实现了一个简单的权限控制拦截。
4,
ErrorHandler
统一管理的应用中的错误;你只需要在合时的地方抛出你的错误,并使用一个与之对应的实现了
IerrorHandler
接口的类来处理该错误即可。在
IerrorHandler
中,允许返回一个
Page
对象,来合成错误的视图。我们同样也实现了一个基于
properties
文件的
ErrorHandlerManager
类,你可以在
web-inf/ErrorHandlerMap.properties
文件中定义错误的类型和他对应的错误处理类。在
hello
实例中,我们也给出了一个简单的错误处理的应用。
5,ForbitRep机制使用ForbitRepProcessor方法根据用户的会话ID和系统时间智能生成一个十六进制的ID,用户只要在自己的表单里添加一个input type=hide,value=forbit的字段就可以解决重复提交的问题。
6,
现在的
hello
应用,包括了最新的
4
个功能的简单的例子。这
4
个新的功能,我们都作了默认的设置,你只需要简单的添加最少的配置文件和实现类来使用这些比较适用的功能。
对于新功能的更多的使用方法,参见相关的文章。也希望你在使用框架时,能发现并及时反馈错误信息,你对新的版本的功能的意见;或者提交你的改进代码,使框架能更完善及易用。
下载Easyjf-jweb0.7.0
posted on 2006-09-11 18:22
简易java框架 阅读(1177)
评论(1) 编辑 收藏