欢迎有兴趣的同行,指点一番。
为什么要开发jcherry的一些哲学分析
每一样技术都有他存在的意义和特点,每一样框架都有他存在的意义和特点。各种的框架,如ejb,spring,struts,hibernate等等,都有他自身的知识体系和优势。学习过程都会有各种问题,其中从我的经验来看,会遇到概念理解的问题,以及本身不够易用。我随便列举一些我的检验和看法。虽然这些技术给我带来的好处是无容置疑的,这里主要列举一些局限性。ejb:概念较多、调试不方便。spring:将代码问题转为配置问题,优势Exception不能准确反映问题。struts:使用过程中发现某些web特性被容器写死,不够灵活。hibernate:概念比较多,如果使用错误会花更多的时间调试。jcherry希望尽量避免这些问题。jcherry定位为web请求的分发器模版层由另外的框架(veloctiy 或 freemarker)实现。jcherry的线程模型和servlet一致,几乎内没有新的概念。jcherry和spring简单的结合,使用了@Controller标记,以及新见了一个 @Web用户表示分发请求。jcherry从功能设计上力争做到足够的轻。
jcherry实现MVC中的Control部分的简单抽象,我觉得应该是方便实用的。
功能
将Web请求分发给相应的Action或者Action的method.
使用方法和步骤
1.配置web.xml
将jcherry.jar导入项目
<servlet> <servlet-name>jcherryDispacher</servlet-name> <servlet-class> cn.sh.flyhyp.cherry.CherryDispatcher </servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>jcherryDispacher</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping>
2.使用Action处理web的请求
新建一个类如abcAction(必须以Action结尾),实现cn.sh.flyhyp.cherry.Action接口,在类前面加@Controller标记。
用户就可以以abc.do访问了。
3.使用Method处理web的请求
新建一个类如abcAction,实现cn.sh.flyhyp.cherry.Action接口,在类前面加@Controller标记。
建一个方法,例如index(HttpServletRequest request, HttpServletResponse response) (必须是这样的参数形式),在方法
前加标记@Web 用户就可以以abc_index.do访问了。
其他功能:
1.访问 __.do 输出所有web控制器的地址信息
特点:
1。和Spring友好集成。
2。和servlet一样的线程模型,简单容易理解
3。配置和使用非常方便