电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

集成Spring、hibernate、struts框架开发轻量级J2EE应用实例版

53页
  • 卖家[上传人]:平***
  • 文档编号:34319821
  • 上传时间:2018-02-23
  • 文档格式:PPT
  • 文档大小:3.31MB
  • / 53 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、构架强壮的J2EE应用 - 集成Spring、hibernate、struts框架开发轻量级J2EE应用,2006年12月6日肖菁,目录,升级Struts,实时获取配置信息的更新;,加入Hibernate,实现数据持久化;,应用Spring,让J2EE应用变得更强壮。,实时更新ActionBean;,Struts应用开发,Struts应用开发Struts是什么?,Web应用与MVCStruts是什么?一个开源的MVC框架一组JSP标签库Struts版本Struts 1Struts 2www.apache.org提供升级支持,Struts应用开发-MVC In Struts,HttpRequest,HttpResponse,Controller,View,ActionServlet,ActionFormBean,JSP Taglibs,JSP,ActionClass,1、request,3、forward,2、fill withRequest data,4、fill withbusiness data,5、forward,7、get business data,6、use,8、respo

      2、nse,Model,Struts应用开发解读Struts下载包,Struts应用开发Struts组件,Components1、Struts AppsBlank、Cookbook、Examples、MailReader、EL Example、Faces Example 1、Scripting MailReader等 2、Struts EL expression language 3、Struts Extras several popular but non-essential classes like ValidatorActionForm 4、Struts Faces supports the use of JavaServer Faces in Struts5、Struts Scripting allows Struts Actions to be written in the scripting language(Bean Scripting Framework ) 6、Struts Taglib 7、Struts Tilestemplating system,Struts应用开发

      3、Struts应用开发环境,开发环境: Windows XP Eclipse3.2 + WTP1.5.2 Struts 1.3.5 Oracle9i EasyStruts(可选),Struts应用开发配置Struts应用,配置Struts应用步骤: 1、创建Web应用目录2、将Struts应用所需的lib拷贝到WEB-INFlib目录下 所需的lib均存在于struts-1.3.5lib目录中3、在WEB-INF目录中增加新的配置文件struts-config.xml、validation.xml4、配置ActionServlet 修改web.xml,增加ActionServlet “action”的配置内容,Struts应用开发开发Struts应用的关键步骤(1),演示实例说明: 用户注册开发步骤: 1、开发Model - UserFormBean继承org.apache.struts.action.ActionForm2、开发View - *.jsp 引入标签库编写标签和FormnBean交互注 name命名规范、和FormBean属性的一致性,Struts应用开发开发Struts应

      4、用的关键步骤(2),3、开发ActionBean - UserActionA. 继承org.apache.struts.action.Action B. 提供public ActionForward execute( ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception; 的实现 C. 和FormBean进行交互 UserFormBean userForm = (UserFormBean) form;D. 和JSP进行交互 request.setAttribute(hello, Hello,这是从Controller传递过来的信息); E. 实现导航 farward = mapping.findForward(“success”);4、配置FormBean,Struts应用开发开发Struts应用的关键步骤(3),5、配置ActionBeanA. Action Bean配置B. 导航规则,Struts应用开发浏览

      5、和演示用户注册实例,演示内容:1、浏览Struts应用开发环境2、浏览Struts配置内容3、浏览用户注册实例开发内容FormBean、registerUserInput.jsp、success.jsp、failure.jsp、ActionBean、struts-config.xml4、演示用户注册实例,目录,升级Struts,实时获取配置信息的更新;,加入Hibernate,实现数据持久化;,应用Spring,让J2EE应用变得更强壮。,实时更新ActionBean;,Struts应用开发,Struts升级实时获取配置信息问题描述,在应用开发、调试过程中,随着开发进程的向前推进,需要在配置文件( struts-config.xml )中不停的增加 FormBean 、 ActionBean 的配置信息,然而每一次修改之后, Struts 框架不能及时地获取增加的信息,除非重新起动这个 Web 应用。,Struts升级实时获取配置信息问题分析,1、原理避免性能方面的问题采取的策略引发了问题2、具体原因I/O 操作是一种非常耗时的操作;配置信息保存在XML中;所有的配置信息在 Web 应

      6、用启动的时候一次性的读入 ;新增加的配置信息无法识别,Struts升级实时获取配置信息解决方案,调整配置信息获取策略:1、首选策略仍然是Struts提供的配置信息获取策略(一次性读取,保存在Java对象中);2、在首选策略没有成功的情况下,从struts-config.xml中查找符合要求的配置信息,并且同时保存在首选策略中(在保存配置信息的Java对象中增加必要的内容,包括相应的FormBean和ActionBean);,Struts升级实时获取配置信息具体实现,获取配置信息的代码是org.apache.struts.taglib.html.FormTag的lookup方法中。 mapping = (ActionMapping) moduleConfig.findActionConfig(mappingName); 修改后的获取配置信息的代码段如下: actionMapping = (ActionMapping) moduleConfig.findActionConfig(mappingName); / 如果 Java 对象中没有对应的配置信息,访问配置文件,查找是否有应用启动 /

      7、后新加入的配置信息 if (mapping = null) / 获取配置文件中的实际路径 String configFilePath = pageContext.getServletContext().getRealPath(“/”) + “/WEB-INF/struts-config.xml”; / 使用辅助类访问配置文件获取对应的 ActionBean 的配置信息 actionMapping = ActionFactory.getActionConfig(mappingName, configFilePath); / 使用辅助类访问配置文件获取该 ActionBean 对应的 FormBean 的配置信息 FormBeanConfig formBeanConfig = ActionFactory.getFormBeanConfig( actionMapping, configFilePath); / 将符合要求的 ActionBean 配置信息保存到 Java 对象中 If (actionMapping!= null) moduleConfig.addActionConfig(ac

      8、tionMapping); / 将符合要求的 FormBean 配置信息保存到 Java 对象中 If (formBeanConfig!= null) moduleConfig.addFormBeanConfig(formBeanConfig); ,Struts升级实时获取配置信息其他,1、上面的解决方案均针对开发环境适用,运行环境下从性能考虑还是使用Struts默认的策略比较好;2、上面的解决方案仅针对FormBean、ActionBean的配置信息获取,其他的如Forward的并没有考虑在内;3、上面的解决方案仅针对单配置文件(Struts-config.xml)的情况,现在Struts允许使用多个配置文件,因此还需要在此基础上进行功能扩展,满足更高的要求。,目录,升级Struts,实时获取配置信息的更新;,加入Hibernate,实现数据持久化;,应用Spring,让J2EE应用变得更强壮。,实时更新ActionBean;,Struts应用开发,Struts升级实时更新ActionBean问题描述,基于Sturts的应用开发、调试过程中, ActionBean 经常需要修改,然而

      9、每一次修改之后, ActionBean 就无法正常调用,需要重新起动这个 Web 应用才能够生效。,Struts升级实时更新ActionBean问题分析,1、原理 Struts中使用Servlet Context来缓存RequestProcessor对象2、具体原因RequestProcessor对象保存在Servlet Context中;修改Action后,ActionServlet被重新load,Servlet Context被更新;RequestProcessor对象无法正常获取。,Struts升级实时更新ActionBean解决方案,将RequestProcessor对象的保存环境由Servlet Context环境切换到新创建某个对象的static变量中,当ActionServlet 被重新时,ProcessorFactory 对象的static变量不会发生变化。,Struts升级实时更新ActionBean实现(1),新创建ProcessorFactory 对象,用它的static属性proccessors保存RequestProcessor对象:public class ProcessorFactory public static HashMap processors = new HashMap(); public static void addProcessor(String key, RequestProcessor processor) processors.put(key, processor); public static Object getProcessor(String key) return processors.get(key); ,

      《集成Spring、hibernate、struts框架开发轻量级J2EE应用实例版》由会员平***分享,可在线阅读,更多相关《集成Spring、hibernate、struts框架开发轻量级J2EE应用实例版》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.