一种基于Servlet的控制层软件框架设计
2017-04-13史梦安
史梦安,马 壮
(淮安信息职业技术学院 计算机与通信工程学院,江苏 淮安 223003)
一种基于Servlet的控制层软件框架设计
史梦安,马 壮
(淮安信息职业技术学院 计算机与通信工程学院,江苏 淮安 223003)
使用“IOC模式”以及“单例模式”等设计思想设计了一种以Servlet作为Http请求入口的非侵入式控制层软件框架,通过Java反射技术建立了“IOC容器”并对其运行效率进行了研究。该框架可以针对不同请求,动态实例化控制器对象,实现控制反转和请求分发,从而有效降低模块间耦合,提升系统的可扩展性及开发效率。
Servlet;控制层软件框架;Java反射技术;IOC;非侵入式
0 引言
Servlet是Java编程语言的Web服务器端编程技术,运行在 Java-enabled Web Server 中。Servlet基于请求/响应模式提供Web服务,可针对不同请求作出不同响应,常作为MVC模式中的Control模块[1]进行请求的分发。Spring MVC、Struts等企业级应用开发框架即以Servlet为核心,但Spring MVC、Struts等框架几乎封装了一般Web项目涉及的所有领域:控制器、过滤器,甚至标签库。小型应用的开发可能只需要框架的请求分发功能,但必须搭建一个完整框架,令含小型应用的开发流程过于臃肿。本文设计了一种“轻量级”、非侵入式的基于Servlet的控制层软件框架,以降低小型应用开发难度,提高开发效率。
1 基于Servlet的请求分发
Servlet中定义有doGet()和doPost()两个处理请求的方法,即每个Servlet可以接收两个不同的Http请求,并将请求转发至相应的业务逻辑中进行处理。在业务逻辑稍微复杂、需要服务端同时处理多种请求时,Servlet功能的局限性便凸显出来。Servlet处理多种请求有两种方式:①建立多个Servlet;……
