知道Struts的运用原理和步骤,但是理解得不透彻 ,但是没法用语言进行组织,请大家多帮忙

解决方案 »

  1.   

    1. 先画界面
    2. 复制 struts2.jar文件到lib
    3. 在web.xml配置StrutsPrepareAndExecuteFilter(在web.xml文件添加如下)
    4. 写action包中Action类,在Action类中写界面提交的属性,并生成set/get方法
       写public String execute() throws Exception;
    5. 在src下创建struts.xml文件  
    6. 保存变量到作用域
    7. 一个action处理多个请求
      

  2.   

    不知道,你问的是struts1还是struts2。
    两者原理和机制完全不同,struts2更像是webwork
      

  3.   

    我总结的如下:
    web加载并初始化actionservlet,actionservlet从Struts-config.xml配置文件中读取信息,把它们放到各种配置对象中,当ActionServlet接到请求时,struts流程开始,(1)检索和用户匹配的ActionMapping实例,如果不存在则返回请求路径无效(404错误),如果有匹配的ActionMapping实例;(2),但是ActionForm实例不存在,那么就创建一个ActionForm对象,并把请求传过来的信息保存到ActionForm对象中;(3)根据配置信息决定是否进行表单验证,如果需要验证,就调用Action的validate()方法;(4)如果ActionForm的validate()方法返回null或返回一个不包含ActionMessage的ActuibErrors对象,就表示表单验证成功;(5)ActionServlet根据ActionMapping所包含的映射信息决定将请求转发给哪个Action,如果相应的Action实例不存在,就先创建这个实例,然后调用Action的execute()方法;(6)Action的execute()方法返回一个ActionForward对象,ActionServlet在把客户请求转发给ActionForward对象指向的JSP组件;(7)ActionForward对象指向JSP组件生成动态网页,返回给客户;(8)struts流程结束
      

  4.   

    通过配置进行流程的控制: struts是经典的mvc模型的封装web框架. 在浏览器客户发送请求到服务器ActionServlet(struts核心处理器)接收到请求, 读取 struts-cofig.xml配置文件找到对应的frombean类接收客户端发送过来的参数进行封装. 然后找到对应的action类进行业务处理 .action调用javabean业务组件处理请求, 处理完成后action负责将处理结果返回到客户端浏览器.
      

  5.   

    Struts1基于Servlet: ActionServlet 开始初始化,读取配置
    在接受到请求后ActionServlet的doGet/doPost调用RequestProcessor.process方法,这个方法是整个struts1d的核心,actionform从request中读取参数(populate),actionform的validate,查找对应的action, action.execute,最后的forward处理,以及异常处理等都在其中Struts2机制大变,基于拦截器可以干很多事情,抛弃了form,直接进action,页面上标签由于webwork也大为不同
      

  6.   

      谢谢大家 我问的是Strust1 
      

  7.   

    IMHO,想了解struts1机制的,RequestProcessor必看