`
takkymj
  • 浏览: 124218 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Struts1.2教程一 Struts1.2入门

阅读更多
我们为什么要用Struts1.2这个框架,他的到来到底为了解决什么样的问题

      在这前的我们已经学习了Java WEB,我们已经知道Java WEB开发的两个模式Model1和Model2,其中Model2模式借鉴了一种MVC模式(模型、视图、控制),这个模式能够有效的将业务与视图分开,从而将开发人员与网页美工人员分离开,有利于分工合作,但Model2模式也有它致命的弱点,由于所有的用户请求都通过控制器来与后台业务交互,但每一个用户请求又不同,这样我们就必须为每一个请求写一个控制器(servlet),如果一旦业务庞大,就可能有很多的控制器,这样会给系统维护和扩展都带来巨大的不便,为了解决这一问题基于MVC模式的开源框架Struts悄然问世,在这个框架中我们所有的请求都到一个中央控制器(ActionServlet)统一处理,这样既有利于我们的维护工作,也增强了系统的扩展性。



Struts1.2初始化流程和具体工作流程
       初始化流程:struts最主要的是中央控制器(ActionServlet),它和其他Servlet一样,ActionServlet的加载取决于Servlet容器(WEB容器)来决定,容器根据配置文件(web.xml)的<load-on-startup>标签决定是在容器启动时加载还是第一次请求到来时加载。不管哪种方式,当ActionServlet加载时,ActionServlet加载并初始化Struts配置文件struts-config.xml,它会把每一个<action>标签的内容生成ActionMapping对象存放在内存中,对于每一个<form-bean>标签会生成ActionFormBean对象存放在内存中等等,最后加载并初始化消息文件到内存中。



       基本工作流程:当完成Struts初始化工作后,以下是一个请求到来时的工作流程。

          1.一个请求到来,在内存中找到与之匹配的ActionMapping对象,如果没有找到这提示请求路径错误信息,如果找到进入第二步;

          2.找到ActionMapping对象对应的formBean,并创建一个实例把请求信息填充到对象中;

          3.根据配置的validate属性决定是否进行表单验证,如果需要则执行formbean的validate方法,如果返回null或者不包含ActionMessage的ActionErrors对象,则表明验证通过,如果不通过则根据配置的input属性的值跳到相应的错误页面;

          4.通过验证后配置的映射对象并创建该Action对象,执行execute方法完成业务逻辑的操作,返回一个ActionForward对象,ActionServlet根据返回的ActionForward对象,生成动态页面并响应给客户端。





Struts1.2的几个知识点
          1.Struts1.2的初始化流程和工作流程;

          2.Struts1.2实质上应用了JavaEE的前端控制器模式,所有用户的请求都由这个控制器统一处理;

          3.Struts1.2在视图层有一些JSP组件和ActionFormBean来实现,控制器由ActionServlet和Action来完成,对于模型层Struts1.2没有对其实现,一般由javabean和EJB来完成;

          4.Struts标签如<bean:message>可以将消息文件中的文本显示在JSP页面,这样Struts1.2可以对国际化的实现;

          5.Struts1.2的核心配置文件struts-config.xml必须在web.xml配置文件中注册,因此struts-config.xml文件名是可以改动的。



      好了,这就是Struts1.2的一些入门知识点,主要是一些原理问题,最主要是弄清楚Struts1.2的工作原理,这里我没有给出Struts1.2的代码例子,大家可以在网上找找,还是用Struts1.2简单实现下用户登陆业务,熟悉熟悉其工作原理。

分享到:
评论

相关推荐

    struts、struts1.2 学习教程

    次资源中包含了本人根据学习struts、struts1.2java框架总结出来的学习笔记,以及对这两个版本异同的比较,包含框架的从入门到精通,适合各种不同阶段的人员学习......

    Struts1.2入门程序

    Struts1.2入门程序Struts1.2入门程序

    struts1.2入门视频

    介绍struts1.2的运作原理,通过一个用户登录的小例子帮助理解

    struts1.2实例讲解,入门参考

    给学生上课讲解的1道struts入门题目Login,可在myelipse下建webPrj并增加struts1.2功能后,step by step操作.希望对大家有用.

    struts1.2入门操作详解及原理

    分步解释如何在myeclipse环境下使用struts。并详细阐述struts机制。

    Struts1.2 入门示例

    NULL 博文链接:https://finally-m.iteye.com/blog/360600

    用户登录(Struts1.2+Spring2.5+Hibernate3.2)

    1、可以运行(发布后,删除\Tomcat 6.0\webapps\ssh\WebRoot\WEB-INF\lib下的asm-2.2.3.jar) 2、采用Struts1.2 + Spring2.5 + Hibernate3.2 整合开发 3、SSH入门级实例

    Struts1.2源码解读

    该文档是针对解析Struts源码所编写的一个文档,是入门Struts,精通Struts的精品文档,该文档为北大青鸟学习Struts的内部资料!

    spring2.5 struts1.2 hibernate_3.2 例子

    可以通过这个学习一下ssh,作为入门的教程,还是很简单易懂的,可以作为最基础的东西

    (struts1+spring1.2+hibernate3),操作oracle 9i增上改查

    (struts1+spring1.2+hibernate3),操作oracle 9i, 增上改查例子简单易懂跑起来没错,包俱全,直接导入myeclipse就能跑起来 数据库很简单 oracle里新建一个 表id name age 数据库名称可自定义修改,这个例子是根据...

    精通Struts基于MVC的JavaWeb设计与开发

    《精通Struts:基于MVC的Java Web设计与开发》详细介绍了在最新的Struts1.1以及不久将推出的Struts1.2版本上设计和开发Java Web应用的各种技术。本书第1章到第3章为入门篇,通过两个Struts应用实例,引导读者把握设计...

    精通Struts基于MVC的Java Web设计与开发 孙卫琴 光盘

    本书详细介绍了在最新的Struts1.1以及不久将推出的Struts1.2版本上设计和开发Java Web应用的各种技术。本书第1章到第3章为入门篇,通过两个Struts应用实例,引导读者把握设计、开发和部署Struts应用的整体流程,充分...

    精通 Struts:基于 MVC 的 JavaWeb 设计与开发(PDF)

    本书详细介绍了在最新的Struts1.1以及不久将推出的Struts1.2版本上设计和开发Java Web应用的各种技术。本书第1章到第3章为入门篇,通过两个Struts应用实例,引导读者把握设计、开发和部署Struts应用的整体流程,充分...

    一个简单的主从表的增删改 采用struts+hibernate

    网上有关主从表提交的资料...用了以下包 dom4j,hibernate3,struts1.2,junit,几个常用apache-commons包,cglib,ehcache,mysql-connector,附件代码里面没有把这些库打包,如果要运行请自己网上下载吧,反正都是开源的

    精通Struts_基于MVC的Java Web设计与开发

    本书详细介绍了在最新的Struts1.1以及不久将推出的Struts1.2版本上设计和开发Java Web应用的各种技术。本书第1章到第3章为入门篇,通过两个Struts应用实例,引导读者把握设计、开发和部署Struts应用的整体流程,充分...

    精通struts:基于mvc的java web设计与开发part3

    本书详细介绍了在最新的Struts1.1以及不久将推出的Struts1.2版本上设计和开发Java Web应用的各种技术。本书第1章到第3章为入门篇,通过两个Struts应用实例,引导读者把握设计、开发和部署Struts应用的整体流程,充分...

    精通struts:基于mvc的java web设计与开发part2

    本书详细介绍了在最新的Struts1.1以及不久将推出的Struts1.2版本上设计和开发Java Web应用的各种技术。本书第1章到第3章为入门篇,通过两个Struts应用实例,引导读者把握设计、开发和部署Struts应用的整体流程,充分...

    Myeclipse开发struts+hibernate+spring新手入门--环境配置---项目开发示例

    Struts specification:选择Struts版本,在此项目中,选择Struts 1.2版本。 Base Package for new classes:设置为空。 取消Install Struts TLDs选项。 其他默认: Finish.后在Package Explorer的Lib包如下: 到此...

    精通struts:基于mvc的java web设计与开发part1

    本书详细介绍了在最新的Struts1.1以及不久将推出的Struts1.2版本上设计和开发Java Web应用的各种技术。本书第1章到第3章为入门篇,通过两个Struts应用实例,引导读者把握设计、开发和部署Struts应用的整体流程,充分...

    快乐编程-知识分享-Struts1.x学习-1.2入门-001

    NULL 博文链接:https://redlight168.iteye.com/blog/1732693

Global site tag (gtag.js) - Google Analytics