zoukankan      html  css  js  c++  java
  • Struts2之初识篇(一)——与struts的区别和基本配置

    正在学习Struts2,该类博客作为笔记整理之用,错误的地方望指正,后期还会不断修改完善.

    Struts2资源

    Struts官方地址:http://struts.apache.org/

    我这里下载了struts2的最新版本struts2-2.5.10.1-all。所有内容如下图:

    其中,apps目录为struts2实例应用程序

       docs目录为struts2指南、向导以及API文档

       lib目录为struts2的发行包以及其依赖包,编程所有需的jar包都在这个目录里可以找到

       src目录为struts2项目源代码

    我们可以根据自己的需要下载

    关于struts和struts2的区别,可以在docs目录下的docs文件中,找到home网页点开,进入Guides指南,可以查找到各种配置文件示例,在web.xml中可以看到不同版本的web.xml的配置区别

     

    在xml配置方面的区别:Struts2版本配置没有ng 

    使用Struts2开发程序的基本步骤

      1、加载Struts2类库

      2、配置web.xml

      3、开发视图层页面

      4、开发控制层Action类

      5、配置Struts2的配置文件(struts.xml)

      6、部署、运行项目

    一个简单的Struts2程序开发完整操作

    1、第一步:导包,其中最后一个包资源里没有,要自己单独下载。推荐一个下载包的资源库:http://mvnrepository.com/

    2、第二步:web.xml配置

     1 <filter>
     2       <filter-name>struts2</filter-name>
     3       <filter-class>
     4           org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter
     5       </filter-class>
     6   </filter>
     7   <filter-mapping>
     8       <filter-name>struts2</filter-name>
     9       <!--匹配所有  -->
    10       <url-pattern>/*</url-pattern>
    11   </filter-mapping>

    3、第三步:开发视图层页面

    写个简单的小例子,用form表单提交信息,再在该页面显示出来

     <body>
        <h1>
            <!--显示action中返回的message信息  -->
            ${message }
        </h1>
        <hr>
        <form action="helloWorld.action">
            请输入您的姓名:
            <input type="text" name="name"/>
            <input type="submit" value="提交"/>
        </form>
      </body>

    4、第四步:写一个控制层action类,注意类中必须要有无参构造,要为请求参数提供field,并且要为之提供setter、getter

    package com.jredu.action;
    /**
     * 返回数据给前台视图
     * @author dell
     *
     */
    public class HelloAction {
    
        private String name;
        private String message;
        
        /**
         * 当struts action处理请求时,在默认情况下,调用execute方法
         * @return
         */
        public String execute(){
            //把前台传入的名字返回给拼接成完整的信息再返回给前台
            setMessage("你好,"+getName()+"!");
            //业务处理完毕后,返回视图hello
            return "hello";
        }
        
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public String getMessage() {
            return message;
        }
        public void setMessage(String message) {
            this.message = message;
        }
        
    }

    5、第五步:配置Struts2的配置文件struts.xml

     a.所有的action都要放在package标签里

      b.action里最常见的属性:

        name:请求路径

        class:映射的处理类

        method:指定一个处理方法,默认处理方法为execute

      c.需要为处理方法返回的字符串指定相应的物理视图

    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
        "http://struts.apache.org/dtds/struts-2.0.dtd">
    <struts>
        <!-- 创建一个default包,继承自Struts2的struts-default包。 -->
        <!-- namespace为路径;/代表绝对路径,从根目录开始;没有/代表相对路径 -->
        <package name="default" namespace="/" extends="struts-default">
            <!--配置一个HelloAction  -->
            <action name="helloWorld" class="com.jredu.action.HelloAction">
                <result name="hello">index.jsp</result>
            </action>
        </package>
    </struts>

    6,、第六步:部署项目,运行

  • 相关阅读:
    Oracle:PL/SQL--流程控制——作业练习:向表中循环插入ID编号
    Oracle:PL/SQL--流程控制(三)——循环结构:loop、while-loop、for-loop
    Oracle:PL/SQL--流程控制(三)——循环结构:loop、while-loop、for-loop
    Oracle:PL/SQL--打开控制台or关闭控制台
    Win10远程桌面及防火墙配置
    H3C-Telnet
    网络工程师(软考)心得
    《网络工程师 考前冲刺100题》思维导图
    《2019上半年网络工程师考试大纲》
    网络设计:搭建校园网(组网工程课设)【译】
  • 原文地址:https://www.cnblogs.com/zys-blog/p/7116456.html
Copyright © 2011-2022 走看看