基于Struts和Hibernate框架的Web应用研究与实现

来源 :科技资讯 | 被引量 : 0次 | 上传用户:liuzujnrui
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:良好的体系结构和开发框架对一个Web应用的设计、开发、扩展、维护具有重要的意义,可以很好地提高代码的复用性,满足系统的“高内聚低耦合”原则。Struts是一种基于MVC的Web框架,实现了表示层和业务逻辑层的分离,提高了系统的开发维护效率;Hibernate是一种开源的持久层框架,保证系统具有更好的移植性,降低了数据库设计的复杂度。
  关键词:MVC Struts Hibernate 框架
  中图分类号:TP3 文献标识码:A 文章编号:1672-3791(2015)03(c)-0021-01
  随着Java EE技术应用的不断增多,选择一种高效的实用的软件开发框架成为软件开发设计人员的基本要求。在Web应用开发设计中,一个成熟的框架不但可以提高代码的重用性,减少重复代码开发的工作量,降低开发成本,还可以保证系统具有较好的移植性、可维护性和可扩展性,降低数据库设计的复杂度。目前基于Java EE平台上常见的Web框架有:Struts、spring、Hibernate等。
  1 Struts和Hibernate框架与Web应用
  MVC模式是一个存在于服务器端表达层的模型,它是“Model(模型)--View(试图)--Controller(控制器)”三个单词的缩写,MVC模式将应用分开,改变应用之间的高度耦合。
  Struts的含义是“支干、支柱”,它的目的是为了帮助减少在运用MVC设计模型来开发Web应用的时间。实质上就是在JSP Model2的基础上实现的一个MVC框架,模型为JavaBean和EJB组件,控制器为ActionServlet和Action,视图为JSP和Struts客户化标签。Struts将Servlet和JSP标记用作实现的一部分。它继承了MVC的各项特性,并根据JavaEE的特点作了相应的变化和扩展。
  在Struts体系结构中视图就是一组JSP文件,在这些JSP文件中既没有业务逻辑,也没有模型信息,只有标准的JSP标签或客户化标签。模型表示应用程序的状态和业务逻辑,对于大型应用,业务逻辑通常由JavaBean或EJB组件来实现。控制器的主要功能从客户端接收请求,决定执行什么业务逻辑功能,然后将产生下一步用户界面的责任委派给一个适当的View组件。
  Hibernate是一个O/R Mapping(对象/关系映射)框架,提供强大的对象与关系数据库映射及查询功能,即是将Java中的对象和对象间的关系,对应到关系型数据库中的表格和表格间的关系,也能够把关系型数据库中的表格和表格间的关系对应到Java中的对象和对象间的关系。它的基本工作原理是Hibernate通过对JDBC进行封装,并对关系数据库与Java类进行mapping,从而来实现对关系数据库的面向对象方式的操作,这样传统的JDBC+SQL的操作数据方式就得到了改变,程序开发人员能够用更多的时间和精力来进行对象方面的开发。同时为各种不同的数据库提供了统一操作的接口,让Hibernate对几乎所有的数据库开发都支持,从而使应用程序的跨数据库开发变为了可能。
  2 Web系统应用实例
  下面以一个课程成绩管理系统Web应用为例,阐述在Struts+Hibernate框架技术下如何进行实现。由于系统功能在事务处理逻辑与代码设计上具有较多的相似性,因此只选取系统Hibernate实现、登录模块实现2个具有代表性的模块功能加以阐述。
  2.1 Hibernate初始化
  首先需要定义一个类来对Hibernate进行初始化,并由它来创建全局的Session
  Factory实例,提供创建Session实例、关闭Session实例、打开/关闭事务和重新创建SessionFactory实例的方法。这里定义一个HibInit类来完成上述的功能,具体实现SessionFactory创建、session获取和关闭、事务开始、关闭和回滚等功能。
  SessionFactory创建部分的主要代码为:
  try{sessionFactory=new Configuration().configure().buildSessionFactory();}
  catch(Throwable ex){ex.printStack
  Trace();
  System.out.println("SessionFactory初始化失敗");
  throw new ExceptionInInitializerError(ex);
  }
  2.2 映射文件创建
  通过对数据库的分析,已知系统中主要包含系统管理员表(admin)、教师信息表(teacher)、学生信息表(student)、课程信息表(course)、班级信息表(class)、学生课程与成绩表(enrol)六个表,为了实现用Hibernate来进行对象持久化操作,就需要对上述的六个表进行Hibernate映射文件创建。创建的映射文件为XX.xml,方法用Hibernate辅助工具自动生成。
  2.3 持久化类创建
  进行完映射文件创建后,还需要对持久化类进行创建,并将创建好的持久化类放在映射文件的同一个包中,以实现对各类基本信息的持久化操作。
  2.4 Struts配置
  在课程成绩管理系统登录模块中,对用户所提交的信息进行验证标识以及不同角色对应页面跳转功能主要是通过配置登录的LoginForm进行实现的,以此首先必须在struts-config.xml中进行相应的配置,基本代码如下:
  
  
  省略
  

  

  2.5 LoginForm模型创建
  在课程成绩管理系统登录模块中,还需要在这里创建一个继承于ActionForm的模型,用于向Action提交信息,部分基本代码为:
  public class LoginForm extends ActionForm{
  public void reset(ActionMapping mapping,HttpServletRequest request){}
  public void setPassword(String password){this.password=password;}
  }
  3 结语
  通过对Web系统应用实例程成绩管理系统分析,阐述了Struts+Hibernate框架实现过程,很好的提高了代码的重用性,降低开发成本,并保证了系统良好的移植性、可维护性和可扩展性,降低了数据库设计的复杂度,提高了开发效率。
  参考文献
  [1] 李刚.经典Java EE企业应用实战[M].北京:电子工业出版社,2010.
  [2] 刘伟,张利国.Hibernate开发与实战[M].北京:电子工业出版社.
  [3] (美)Christian.Hibernate实战[M].北京:人民邮电出版社,2008.
其他文献
摘要:行业协会是一种中介性质的组织,是介于政府、企业之间,商品生产者与经营者之间,并为其服务、咨询、沟通、监督、公正、自律、协调的社会组织形式,它不属于政府的管理机构系列,完全是一种民间性组织。中国美发美容行业协会成立25年来,在企业、院校、行业之间起到了重要的纽带作用,并在职业技能竞赛水平的提升上,起到了先锋的作用,本文主要就其在职业技能竞赛方面的重要作用,提出几点总结性看法。  关键词:行业协
期刊
摘要:本文针对横河CENTUM VP系统在我公司聚对苯二甲酸丁二醇酯(PBT)装置的应用情况,简单介绍了该装置的工艺流程及配套横河CENTUM VP的系统配置,并结合该装置的特点,阐述该装置主要的控制程序方案  关键词: CENTUM VP系统;PBT装置;PID ;PROFIBUS;组态  中图分类号:TQ323.4 文献标识码:A 文章编号:1672-3791(2015)10(b)-0000-
期刊
摘 要: 生产力的发展与科技息息相关,要使企业的管理水平有所提高进行数字化管理是势在必行的,油田安全施工和发展、科学合理的管理离不开油田的数字化管理,油田的数字化管理有着极大的促进意义。此篇文章将油田数字化进行深入的探究,将油田数字化生产管理系统的功能组成与关键技术等作为关键的论述点,与此同时把数字化技术运用在促进油田优化劳动组织架构和提升油田开发管理水平等等有着促进作用。  关键词:智能管理 科
期刊
摘要:随着研究生党员人数的攀升,研究生党支部设置问题日益凸显,为基层党建工作提出了新问题。本文以苏州大学材料与化学化工学部为例,探讨分析了以年级设置的“横向模式”及以学科设置的“纵向模式”各自的优势特点及弊端,并对新型党支部的设置提出了构想。最后明确指出了优化支部设置的最终目的,都是为了更好的培养具有创新能力,带领研究生发挥先锋模范作用,培养为国家作贡献的优秀研究生。  关键词 :理工类研究生;党
期刊
摘要:本文提出了3种城市交通低碳发展模式,以深圳市为例,采用情景分析方法探讨不同发展模式对城市交通未来能源消耗和碳排放的影响。通过碳排放预测模型分析3种不同情景下2020年深圳市城市交通行业碳排放量和排放强度。研究结果显示,综合考虑深圳市城市发展阶段、机动化发展水平以及资金、技术等一系列因素,深圳市现阶段可采取逐步推进减碳的发展模式,达到相对减碳的目标。  关键词:情景分析;低碳交通;发展模式;深
期刊
摘 要:4G网络的出现解决了农村网络连接速度过慢的问题,提高了人们消费的便利性、空间选择和随时购物的可能性,该文分析了4G时代农村移动电子商务发展的现状以及存在的问题,并提出农村4G时代下移动电子商务发展的对策。  关键词:4G 移动网络 电子商务  中图分类号:G203 文献标识码:A 文章编号:1672-3791(2015)03(c)-0015-01  智能手机的应用在中国的农村已非常普遍,无
期刊
摘 要:工程机械大都以柴油机为动力,由于作业环境恶劣,燃油箱中很容易混入尘土和雨雪,使柴油机受到污染,进而在油箱内壁或箱底形成污垢。这些杂质在发动机工作时通过供油系统管路进入供油系统,会造成供油系统的磨损和故障,因此需要定期对其进行清洗。该文提出了一种改进的燃油箱清洗方法,避免了常规工程机械清洗遇到的拆装耗时耗力的缺点,缩短了油箱清洗时间,提高了工作效率,降低了工程机械的维护成本。  关键词:工程
期刊
摘 要:本文针对船用油水分离器的组建构成及其工作原理做了介绍,同时针对油水分离器的设备维护及检查检修重点,包括常见故障的发现和排除进行了深入分析,这对防止并有效控制船舶污染,维持船舶健康运营将有着至关重要的作用。  关键词:油水分离器 原理 故障分析及维护 水域污染  中图分类号:U664 文献标识码:A 文章编号:1672-3791(2015)03(c)-0040-01  1 船用油水分离器的基
期刊
摘 要:根据钻探成果,总结了邯西周窑硫铁矿的地质特征,与沙河市三王村硫铁矿成因进行了类比,讨论了其成因,并对在此区开展进一步找矿工作提出了建议。  关键词:周窑硫铁矿 地质特征 成因  中图分类号:TM923.5 文献标识码:A 文章编号:1672-3791(2015)03(c)-0087-01  周窑硫铁矿是在煤炭普查勘探工作中发现的新矿体,赋存于上古生代煤系地层的底部。邯邢地区硫铁矿共发现了多
期刊
摘 要:基于传统黑板粉尘产生量大,对环境污染严重,不宜擦拭干净等弊端,研发新型全自动免擦除尘黑板,主要由板面、转轴、板擦、电动机、支撑面板等几部分组成,分为驱动系统、封闭除尘系统及辅助装置系统等部分,该黑板减少粉尘污染使得教学环境更加绿色健康,研究应用前景十分广阔。  关键词:除尘 环保 全自动黑板  中图分类号:F233 文献标识码:A 文章编号:1672-3791(2015)03(c)-000
期刊