本文简要介绍了MVC设计模式和Struts框架,并提出了一种基于MVC模式的新型WEB应用开发框架——WebFramework,并对该框架的各个层次的组成、功能进行了详细的描述。
3.2.2 业务逻辑层
业务逻辑层接受从表示层输入的用户请求,将其转化为业务逻辑过程能够理解的方式,根据特定的业务逻辑有序地向数据层发送数据请求,并将数据层返回的数据解释及组合成用户所需信息,返回给表示层,是整个应用软件系统中业务逻辑的实现和处理核心。业务逻辑层运行在基于J2EE应用服务器的EJB及WEB容器中。
业务逻辑层包含会话外观(Session Façade)、逻辑Bean(Logic Bean)和和数据存取Bean(Data Access Bean)等三个逻辑组件。
1)会话外观
提供了面向表示层的统一的业务逻辑调用接口;是数据存取事务的边界,所有数据存取事务都由会话外观进行管理,即会话外观负责数据存取事务的开始和关闭。
业务逻辑完成方式:通过调用逻辑Bean实现业务逻辑。
2)逻辑Bean
提供了业务逻辑具体实现;具有可复用性:可以直接被会话外观调用,实现会话外观所需的业务逻辑;可以被其他逻辑Bean调用,此时此逻辑Bean作为一个更复杂的业务逻辑的一个组成部分。
业务逻辑完成方式:可以通过调用其他的逻辑Bean实现相对复杂的业务逻辑;可以直接调用数据存取Bean完成相对简单的业务逻辑。
3)数据存取Bean
提供了数据层的访问接口;不负责管理事务,它只是被动的使用调用者传入的事务环境;
与数据库表的映射方式,通常采取单个数据表对应单个数据存取Bean的映射方式,由单个数据存取Bean包含对应单个数据表的所有相关数据访问操作。
4)值对象
包含业务逻辑实体的属性,不包括业务逻辑实体的操作;是表示层和业务逻辑层数据交换的主体单元,和会话外观一同组成了完整的业务逻辑实体,提供了业务逻辑层面向表示层的统一接口;与数据库表的映射方式,通常采取单个数据表对应单个值对象的映射方式;可以与不同类型值对象以聚合方式组成新的值对象。
1)由会话外观提供面向表示层的业务逻辑调用接口,表示层通过Java本地调用访问业务逻辑层。
2)数据存取Bean通过JDBC访问数据库服务。
3)数据存取Bean通过操作系统提供的系统服务访问文件数据。
3.2.3 表示层
表示层接受用户提交的输入请求,通过对业务逻辑层的访问,获得并向用户输出可视化响应。
采用MVC设计模式,由Servlet提供页面请求和请求响应的总体控制,JSP和浏览器提供请求结果响应的可视化显示。
1)Servlet
接收所有用户由通过浏览器提交的业务请求,并合成相应的值对象,访问业务逻辑层完成业务逻辑实体的业务处理;将业务逻辑实体的变化以值对象的方式通知并转向相应的JSP。
2)JSP
根据Servlet告知的值对象,合成请求响应结果的最终输出格式化文本(HTML);将合成格式化文本以网络协议的方式发送给提交业务请求的用户浏览器。
3)浏览器
提供用户输入业务请求数据的输入界面,数据验证通过后提交业务请求;接收业务请求响应的HTML文本,将业务请求响应结果以可视化的访问呈现给用户。
4)WebService
是业务逻辑层对外部系统提供服务的边界和接口,完成和外部系统的集成和交互。
1)Servlet通过Java本地调用访问业务逻辑层。
2)浏览器通过HTTP/HTTPS协议向表示层提出业务请求并接收表示层的业务响应。
3.3 框架的配置文件
(1)系统初始化配置文件:web.xml
该文件是Controller专属的配置信息文件。控制器在第一次启动时需要从这个文件载入系统的配置信息。文件内容如下:
<servlet> <servlet-name>controlservlet</servlet-name> <servlet-class>mytools.control.web.ControlHan-dler</servlet-class> </servlet> <servlet-mapping> <servlet-name>controlservlet</servlet-name> <url-pattern>/controler</url-pattern> </servlet-mapping>
|
(2)页面导航配置文件:web_config.xml
<?xml version="1.0" encoding="GB2312"?> <web-config> <forwards> <forward name="XX" path="filename.jsp"/> ………… </forwards> <action-mappings> <action name="XX" type="ActionClassName" method="methodName"/> ………… </action-mappings> </web-config>
|
web_config.xml文件是整个框架的重要部分,它控制了系统执行时的执行流程。该文件包括两种元素:<forwards>和<action-mappings>,其中<forwards>元素用来设置当前要转向调用的JSP页面,而<action-mappings>则设置了当前用户提交的操作要调用哪一个Action 类,及当前类中的哪个方法。
4、总结
WebFramework框架已经在一个航运管理项目中经过测试和检验,实践证明,此框架在中大型项目开发中,可以缩短开发周期,提高开发效率,系统运行稳定,易于维护。
有关应用开发框架的研究是一个不断深入,逐步完善的过程,在对WebFramework不断推广试用的基础上,还将进一步扩展其功能,使其应用领域更加广泛。