远离框架,实现本身REST风格的Servlet框架(一)

一、设计目标

看过不少别人针对Rest风格框架的评论,有吐槽的,也有褒奖的,本身认为这就是一种软件领域的风尚,就像如某个冬天雪地棉很流行同样,额或者说像禽流感很流行同样,都是软件过分期的产物。废话少说了,设计目标为了针对某些URL如:

www.abcde.com/project/controller/method

www.abcde.com/project/controller/method/para1/para2

用最原始的Servlet实现过程。 web

令:时常关注OSC或个人博客可能不会得流感哟:) ajax

二、流程分析

     一,容器启动 缓存

           资源缓存,请求分析出来对应的类,方法缓存起来以便于url的映射(暂时没作) 框架

    二,动做流程              url

 1,URL解析 设计

url的处理是在UrlFilter中作的,这是借鉴红薯老爹的方式,之前觉得用Servlet的方式在配置与实现上   很简单,其实否则,对于大量静态请求的处理Servlet显得很疲软,因此改用filter的方式实现,这个须要在web.xm中配置。

url被拦截后咱们会进行解析,将解析好的Action(本身封装的一个类,其中包含URL对应的Method,  还有其它一些基本属性)接下来要判断url来源方是否有权限操做,个人设计思路是在须要的Controller  中加入Annotation如@Auth(99)等权限标识。若是符合权限继续操做。

接下来要进行方法的调用,在对应的Action类中我定义了一个字段actionType,它能够帮咱们判断是什么类型的调用(前提是在解析URL实要设定),有ajax的,有转向资源模版路径的,下载的,上传的等,根据这些状况要作相应处理,这个下章会详细介绍。

 额,已经很晚 了,明天还要赶飞机,写不动了,明天我会继续写,只当是对完成工做的一种总结吧,源码在作好后会发上了,以上都是针对像我这样用多了框架,已经忘了什么是Servlet的人的体会,高手不要看不起哦,第一次在OSC发博文,你们板砖,矿泉水瓶什么的都准备好哈。。。

               令:求几个好基有,有木有~~~

相关文章
相关标签/搜索