`
fuyun369
  • 浏览: 30419 次
  • 性别: Icon_minigender_1
  • 来自: 江苏
社区版块
存档分类
最新评论

Struts2 设计模式与流程

阅读更多
Struts2的设计模式:MVC模式:
1,web应用程序启动时就会加载并初始化ActionServler。
2,用户提交表单时,一个配置好的ActionForm对象被创建,并被填入表单相应的数据,
3,ActionServler根据Struts-config.xml文件配置好的设置决定是否需要表单验证,如果需要就调用ActionForm的Validate()验证后选择将请求发送到哪个Action,如果 Action不存在,ActionServlet会先创建这个对象,然后调用Action的execute()方法。
4,Execute()从 ActionForm对象中获取数据,完成业务逻辑,返回一个ActionForward对象,
5,ActionServlet再把客户请求转发给 ActionForward对象指定的jsp组件,ActionForward对象指定的jsp生成动态的网页,返回给客户。

Struts的工作流程:
  在web应用启动时就会加载初始化ActionServlet,ActionServlet从
  struts-config.xml文件中读取配置信息,把它们存放到各种配置对象
  当ActionServlet接收到一个客户请求时,将执行如下流程.
  -(1)检索和用户请求匹配的ActionMapping实例,如果不存在,就返回请求路径无效信息;
  -(2)如果ActionForm实例不存在,就创建一个ActionForm对象,把客户提交的表单数据保存到ActionForm对象中;
  -(3)根据配置信息决定是否需要表单验证.如果需要验证,就调用ActionForm的validate()方法;
  -(4)如果ActionForm的validate()方法返回null或返回一个不包含ActionMessage的ActuibErrors对象,就表示表单验证成功;
  -(5)ActionServlet根据ActionMapping所包含的映射信息决定将请求转发给哪个Action,如果相应的Action实例不存在,就先创建这个实例,然后调用Action的execute()方法;
  -(6)Action的execute()方法返回一个ActionForward对象,ActionServlet在把客户请求转发给ActionForward对象指向的JSP组件;
  -(7)ActionForward对象指向JSP组件生成动态网页,返回给客户;
  
为什么要用struts:
  JSP、Servlet、JavaBean技术的出现给我们构建强大的企业应用系统提供了可能。但用这些技术构建的系统非常的繁乱,所以在此之上,我们需要一个规则、一个把这些技术组织起来的规则,这就是框架,Struts便应运而生。
  基于Struts开发的应用由3类组件构成:控制器组件、模型组件、视图组件.
分享到:
评论
2 楼 bhj626 2012-10-02  
个人见解,你这是误人子弟,拿着struts1的那一套流程来说struts2,
1 楼 yeqing4562010 2012-08-02  
我擦。。。。。

相关推荐

    struts2源码

    struts2源代码及API帮助文档。作为Java Web开发者,成天和SSH打交道,只知其一而不知其二,水平始终停留在初级水平,这就不要...学习初始化过程是如何获取配置构造容器,其中的巧妙构思和设计模式的运用非常值得学习。

    struts项目学习笔记

    Struts2 是一个非常优秀的MVC框架,基于Model2 设计模型 由传统Struts1和WebWork两个经典框架发展而来 Struts2框架=Struts2+XWork Strust2 核心功能 允许POJO(Plain Old Java Objects,简单javabean对象,没有继承,...

    基于Struts架构的网上购物电子商务平台的设计与实现

    本文从网上购物电子商务平台入手,对电子商务的组成、特点、流程等进行了研究并对电子商务平台的体系结构、Struts设计模式框架、Hibernate对象持久化框架等关键技术进行了深入探索,掌握了电子商务平台的设计方法、...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (2)

    2.1.2 MVC模式的处理过程 2.2 Model规范 2.2.1 Model1规范 2.2.2 Model2规范 2.3 使用MVC的优劣 2.3.1 使用MVC模式的好处 2.3.2 使用MVC模式的不足之处 2.4 目前市场上常见的轻量级J2EE开发容器 2.5 小结 第二篇 ...

    搞定J2EE核心技术与企业应用:Ajax,JSP,Struts2,Spring,Hibernate,完整扫描版

    《搞定j2ee核心技术与企业应用:ajax,jsp,struts 2,spring,hibernate》是笔者在多年项目开发过程中的经验总结,它通过丰富的实例由浅入深、循序渐进地介绍了目前采用java进行web开发的各种框架的使用方法,从而...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (1)

    2.1.2 MVC模式的处理过程 2.2 Model规范 2.2.1 Model1规范 2.2.2 Model2规范 2.3 使用MVC的优劣 2.3.1 使用MVC模式的好处 2.3.2 使用MVC模式的不足之处 2.4 目前市场上常见的轻量级J2EE开发容器 2.5 小结 第二篇 ...

    Struts开发在线考试系统\.pdf

    介绍目前流行的MVC设计模式以及基于MVC模式的Struts框架;通过模拟传统的考场考试,利用 Struts框架的优势设计出在线考试系统;给出了该系统的功能、模块划分、处理流程及关系表与部分代码,并以 该系统为例分析了Struts...

    基于STRUTS框架的网上订房系统论文

    Struts是一种基于MVC经典设计模式的框架技术,也是目前Web开发中比较成熟的一种框架。本文利用UML对网上宾馆订房系统进行建模,给出了所得的用例图等相关文档,完成了从需求分析、总体设计、功能设计、数据库设计到...

    项目申报系统(Struts2+Spring+Hibernate+Jsp+Mysql5)源码.zip

    该系统源码采用了先进的MVC设计模式,通过Struts2框架实现前端页面的展示与交互,Spring框架负责业务逻辑的处理与组件管理,Hibernate框架则负责数据的持久化操作。同时,JSP技术被广泛应用于前端页面的开发,为用户...

    基于Java(Struts2 框架)+Mysql实现(Web)学生成绩管理系统【100010053】

    后端:JavaEE 的 Struts2 框架、MySQL 数据库(多表查询,级联删除、触发器、存储过程)、JavaBean 数据验证:HTML5 的原生验证模式、Struts2 的 Validation 验证框架以及 Interceptor 拦截器、JavaEE 的 Filter 过滤...

    struts-hibernate参考文档

    它通过采用JavaServlet/JSP技术,实现了基于Java EEWeb应用的MVC设计模式的应用框架,是MVC经典设计模式中的一个经典产品 Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得...

    信息办公基于struts的图书管理系统-struts-ts.rar

    该系统采用了MVC设计模式,以Struts框架作为核心,结合JSP技术实现了一个功能完善的图书管理系统。该系统主要包括用户管理、图书管理、借阅管理等多个模块,旨在为用户提供一个高效、便捷的图书管理平台。在这个系统...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (3)

    2.1.2 MVC模式的处理过程 2.2 Model规范 2.2.1 Model1规范 2.2.2 Model2规范 2.3 使用MVC的优劣 2.3.1 使用MVC模式的好处 2.3.2 使用MVC模式的不足之处 2.4 目前市场上常见的轻量级J2EE开发容器 2.5 小结 第二篇 ...

    其他类别Struts+Hibernate实现MVC-strutsmvc.rar

    Struts+Hibernate实现MVC_strutsmvc.rar是一个计算机专业JSP源码资料包,它提供了一种基于Struts和Hibernate框架的实现模型-视图-控制器(MVC)设计模式的方法。这个资料包包含了一个完整的示例项目,用于演示如何...

    深入浅出Struts 2 .pdf(原书扫描版) part 1

    如数据类型转换、文件上传和下载、Struts2应用的安全性、调试与性能分析、FreeMarker、Velocily、Ajax,等等。跟随作者一道深入Struts2。聆听大量来之不易的经验之谈。你对Struts2开发框架的理解和应用水平都将更上...

    信息办公Struts图书馆管理系统-struts.rar

    通过使用Struts框架,该系统实现了MVC(模型-视图-控制器)设计模式,将业务逻辑、数据访问和用户界面分离,使得代码更易于维护和扩展。此外,该系统还提供了良好的错误处理和异常处理机制,确保了系统的稳定性和...

    基于struts的毕业设计管理系统

    针对目前信息管理学院毕业设计的流程比较繁琐、效率不高的弊端,本系统要实现整个毕业设计过程的办公自动化,采用流行的J2EE轻量级的架构模式,实现用经典的MVC模式struts来搭建一个管理信息系统。系统主要实现学生...

Global site tag (gtag.js) - Google Analytics