实验1--基于框架的应用系统开发框架选择原因及其说明

所选框架:SSH(Struts2+Hibernate+Spring)

选择原因:

它是一种Web应用程序开源框架,采用MVC模式分离业务逻辑层、显示层、模型层,它结构清晰,使人容易明白业务逻辑。其连接数据库的方法比起只使用servlet减轻了很大的工作量,连接数据库简便方便。Struts2框架有很多的标签可以使用,其配置文件可以让人很清楚地看到系统各部分之间的联系,明白各个界面之间的跳转关系。Hiberbate将数据库映射到对象上,可以使用对对象的编程思想来操作数据库,可以不用书写大量的SQL语句。Spring控制所有Action和业务逻辑类的生命周期,使程序运行起来效率高。

SSH框架说明:

(1)本程序Struts2负责页面数据提取,页面动作的响应;

(2)使用Hibernate负责将数据对象保存到数据库中;

(3)Spring负责对象创建,Action的创建,DAO创建。

Spring充当一个容器的作用,Spring使用IOC和AOP技术接管Hibernate的DAO和Struts的Action对象,充分管理事物和代理request请求,经过IOC容器处理后,针对面向接口的编程使软件项目的分层更明确。Model层使用Spring,View层使用JSP,Controller层使用Struts,持久层使用Hibernate。Spring对Hibernate的DAO有一个很好的封装,使我们在开发程序时不用去理会事务。

Hibernate的工作原理是读取并解析配置文件,读取并解析映射信息,创建SessionFactory,打开Session,创建事务Transation,持久化操作,提交事务,关闭Session,关闭SessionFactory。它对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。同时,它也是一个基于JDBC的主流持久化框架,是一个优秀的ORM实现,很大程度上简化了DAO层的编码工作。它使用Java反射机制来实现透明性,它的灵活性很好,它支持各种关系数据库,从一对一到多对多的各种复杂关系。

Struts的工作流程为:客户端浏览器发出HTTP请求,根据web.xml配置,该请求被FilterDispatcher接收,根据struts.xml配置,找到需要调用的Action类和方法, 并通过IoC方式,将值注入给Aciton,Action调用业务逻辑组件处理业务逻辑,这一步包含表单验证,Action执行完毕,根据struts.xml中的配置找到对应的返回结果result,并跳转到相应页面,返回HTTP响应到客户端浏览器。Struts实现了MVC模式,结构清晰,只需要关注业务逻辑的实现即可,它具有丰富的tag可以用,好好使用可以提高开发效率。它的最根本的好处就是方便对程序的修改。

Spring的工作机制:Spring MVC把所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责对请求进行真正的处理工作,DispatcherServlet查询一个或多个HandlerMapping,找到处理请求的Controller,DispatcherServlet把请求提交到目标Controller   ,Controller进行业务逻辑处理后,会返回一个ModelAndView,Dispathcher查询一个或多个ViewResolver视图解析器,找到ModelAndView对象指定的视图对象,视图对象负责渲染返回给客户端。Spring既是一个AOP框架,也是一IOC容器。 Spring 最好的地方是它有助于替换对象。有了 Spring,只要用 JavaBean 属性和配置文件加入依赖性(协作对象),然后可以很容易地在需要时替换具有类似接口的协作对象。

时间: 2024-08-24 21:07:07

实验1--基于框架的应用系统开发框架选择原因及其说明的相关文章

基于框架的应用系统开发的质量属性

基于框架的应用系统开发(以你开发的系统为原型)的质量属性 质量属性分别有: 可用性(Availability)的战术 可用性是指系统正常运行时间的比例,可用性关注的问题有:如何检测故障.发生故障的频度.出现故障时的现象.系统故障排除的时限.如何防止故障的发生.发生故障时的处理: 可修改性(Modifiability)的战术 性能(Performance)的战术 安全性(Security)的战术 易用性(Usability)的战术 可测试性(Testability)

基于框架的应用系统的质量属性

质量属性指的是影响质量的相关因素,是对质量的描述.下面我从6个常见的系统质量属性和一些其他质量属性进行系统的质量描述. 系统质量属性: 可用性: 在可用性方面,本系统可以相对应的任务如用户信息的传输,页面信息与数据库的传输,即可以完成特定任务和达到特定任务时具有高度的正确和完整度.在任务执行和信息传输时所用时间短和所占资源少.基于以上两个准则,让用户可以正常操作无障碍,使得系统具有较高的用户主管满意度.在应对可用性的战术中应用如心跳.异常等进行错误检测. 可修改性: 软件不是一成不变的,跟着用户

基于MVC4+EasyUI的Web开发框架形成之旅--框架总体界面介绍

在前面介绍了一些关于最新基于MVC4+EasyUI的Web开发框架文章,虽然Web开发框架的相关技术文章会随着技术的探讨一直写下去,不过这个系列的文章,到这里做一个总结,展示一下整体基于MVC4+EasyUI的界面效果,让大家对这款Web开发框架有一个形象的了解,界面设计以及相关思路可以借鉴提高,也可以对相关的内容进行相互探讨,共同提高. 技术特点:整个Web开发框架,界面部分采用较新的技术,包括MVC4,最新版本的EasyUI,以及zTree树形控件.Uploadify文件上传组件等模块,另外

基于MVC4+EasyUI的Web开发框架形成之旅(5)--框架总体界面介绍

在前面介绍了一些关于最新基于MVC4+EasyUI的Web开发框架文章,虽然Web开发框架的相关技术文章会随着技术的探讨一直写下去,不过这个系列的文章,到这里做一个总结,展示一下整体基于MVC4+EasyUI的界面效果,让大家对这款Web开发框架有一个形象的了解,界面设计以及相关思路可以借鉴提高,也可以对相关的内容进行相互探讨,共同提高. 技术特点:整个Web开发框架,界面部分采用较新的技术,包括MVC4,最新版本的EasyUI,以及zTree树形控件.Uploadify文件上传组件等模块,另外

RDIFramework.NET — 基于.NET的快速信息化系统开发框架 — 系列目录

RDIFramework.NET - 基于.NET的快速信息化系统开发框架 - 系列目录 RDIFramework.NET,基于.NET的快速信息化系统开发.整合框架,给用户和开发者最佳的.Net框架部署方案.  框架简单介绍 RDIFramework.NET,基于.NET的快速信息化系统开发.整合框架,为企业或个人在.NET环境下快速开发系统提供了强大的支持,开发人员不需要开发系统的基础功能和公共模块,框架自身提供了强大的函数库和开发包,开发人员只须集中精力专注于业务部分的开发,因此大大提高开

基于C/S架构的3D对战网络游戏C++框架 _05搭建系统开发环境与Boost智能指针、内存池初步了解

本系列博客主要是以对战游戏为背景介绍3D对战网络游戏常用的开发技术以及C++高级编程技巧,有了这些知识,就可以开发出中小型游戏项目或3D工业仿真项目. 笔者将分为以下三个部分向大家介绍(每日更新): 1.实现基本通信框架,包括对游戏的需求分析.设计及开发环境和通信框架的搭建: 2.实现网络底层操作,包括创建线程池.序列化网络包等: 3.实战演练,实现类似于CS反恐精英的3D对战网络游戏: 技术要点:C++面向对象思想.网络编程.Qt界面开发.Qt控件知识.Boost智能指针.STL算法.STL.

基于javacv和SSI框架的图像检索系统

关于javacv的资料很少,甚至连说明文档都不全.我做这个毕设也是十分头大,现在终于毕业设计结束了,我把我的代码放出来给大家参考,另带毕业论文.开题报告.文献综述等等文档,希望对大家有帮助. 连接地址:基于javacv和SSI框架的图像检索系统 包含的文件: 其中搜图文件夹里面是项目的源代码.项目直接运行应该是不行的,需要很多环境,说明文档里有写.有点基础的人花点时间应该能运行出来. 基于javacv和SSI框架的图像检索系统

基于ssm框架的论坛系统

                                                             基于ssm框架的论坛系统 1.介绍 本论坛系统基于spring,spring mvc,mybatis框架搭建,实现了论坛的基本功能,注册,登录,发帖,浏览等功能. 2.截图 3.源码 源码已上传至我的github,链接为 https://github.com/withstars/Genesis  ,如有需要请自行下载 原文地址:https://www.cnblogs.com/

《脑机交互促进学习有效发生的路径及实验研究——基于在线学习系统中的注意力干预分析》 文献随笔(八)

一.基本信息 标题:脑机交互促进学习有效发生的路径及实验研究——基于在线学习系统中的注意力干预分析时间: 2019来源: 前沿搜索关键字:脑机交互:脑机接口:学习路径:学习注意力:实验研究:自适应学习:智能测评 二.研究 脑机交互在技术层面诞生并逐渐发展,但更多的还停留在技术层面,在基于1985-2018年的SCI和SSCI期刊论文中关于“脑机接口的演化过程及其在教育领域的应用”的知识图谱分析,其脑机接口在学习过程的核心,体现为大脑和双向救护,包括人工智能技术.教育大数据分析技术.大脑-心理-计