• struts快速入门第一篇 —— struts相关XML配置映射及讲解


      我们回忆一下在学习JavaWeb过程中(Jsp + servlet编程)所感受到的Servlet的不足:

        1 Servllet很多时,web.xml中的代码会很多。这样一来,维护起来就不方便,不利于团队合作;

        2 一个Servlet的入口只有doGet或doPost方法,如果需要定义其它方法,就必须得在前两者中调用它们。这样会导致代码结构很乱;

        3 let类与servlet容器高度耦合,每个方法中都有两个参数requestresponse。如果服务器不启动,这两个参数没有办法初始化。这会给 单元测试 带来麻烦。

        4 如果在servlet中的一个方法中,有很多功能,这个时候,会导致该方法比价复杂,以致于不利于维护

        在servlet中如果要获取页面上表单中的数据,那么在方法中会写很多行

      

    Struts2的历史

      1、 servelet

      2、 struts1

        1、 写action

        2、 写了一个中控的servlet

        3、 actionForm 和页面上表单中的内容一致

         3webwork

             1、使得actionservlet容器完全松耦合

         2、属性驱动和模型驱动获取页面上表单中的数据

         3、利用了拦截器的概念把servlet容器的第4个缺点克服掉了

        4struts1+webwork=struts2

    第一个例子

      编写步骤:

        1 创建一个Web project

        2 从struts的jar包中拷贝web.xml放入到上述项目中

        

        3 创建一个普通的Java类,我们习惯将它名字的最后一个单词写为Action。如HelloWorldAction。它应该提供返回值为String的方法。

        

        4 在src文件夹下创建struts.xml[名字必须是这个] 并将struts-2.3.1.2appsstruts2-blankWEB-INFclasses目录下struts2.xml的部分代码拷贝至其中。改写如下:

        

     1 <?xml version="1.0" encoding="UTF-8" ?>
     2 <!DOCTYPE struts PUBLIC
     3     "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
     4     "http://struts.apache.org/dtds/struts-2.0.dtd">
     5 
     6 <struts>
     7     <package name="helloworld" namespace="/" extends="struts-default">
     8         <action name="HelloWorldAction" method="greet"
     9             class="com.struts2.action.HelloWorldAction">
    10             <result name="index">index.jsp</result>    
    11         </action>
    12     </package>
    13 </struts>

            5 部署到Tomcat上后,开启服务器并访问

    http://localhost:8080/struts2_helloworld/HelloWorldAction.action

         

        

      

     

    觉得不错请点个赞 若有想法随意评论 问题难解就联系我 互相帮助才是网络
  • 相关阅读:
    如何修改 WordPress 的默认 Gravatar 头像
    解决wordpress部分博客文章页面无法显示的问题
    git删除本地所有的更改
    C++ char数组和string类简单使用总结
    c++ 中关于int,unsigned int , short的关系与应用
    CentOS下,mysql服务启动失败
    通过日志动态查看正在执行的mysql语句
    mysql 处理数据库中的重复行
    Linux cp复制
    在myeclipse中使用查找功能
  • 原文地址:https://www.cnblogs.com/UzumakiNaruto/p/5656674.html
Copyright © 2020-2023  润新知