zoukankan      html  css  js  c++  java
  • struts2基础——最简单的一个例子

    学习版本:struts-2.3.15.3

    一、导入jar包,可以参考 官方项目 blank。

    二、添加配置文件:web.xml struts.xml

    web.xml:

        <filter>
            <filter-name>struts2</filter-name>
            <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
        </filter>
    
        <filter-mapping>
            <filter-name>struts2</filter-name>
            <url-pattern>/*</url-pattern>
        </filter-mapping>
    web.xml

    struts.xml:可以参考官方项目

    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
        "http://struts.apache.org/dtds/struts-2.3.dtd">
    
    <struts>
        <package name="default" namespace="/" extends="struts-default">
            <action name="helloworld" class="com.nucsoft.struts2.helloworld.HelloWorld" method="firstMethod">
                <result name="success">/success.jsp</result>
            </action>
        </package>
    </struts>
    struts.xml

    三、创建 Action 类

    public class HelloWorld {
        private static final String SUCCESS = "success";
    
        public String firstMethod() {
            System.out.println("com.nucsoft.struts2.helloworld.HelloWorld.firstMethod");
            return SUCCESS;
        }
    }
    HelloWorldAction

    四、详解

    web.xml:

    org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter为 struts2 的核心处理器,相当于 SpringMVC 的dispatchServlet

    struts.xml

    根标签:struts

    package 标签定义一个功能模块,

    name 属性:标识 package,便于引用,extends 属性:需要继承一个父 package,如 struts-default。

    namespace 属性:包的命名空间。默认为 /,abstract 属性:定义包为抽象的,不能包含 Action 的定义。

    action 标签:

    一个 Struts2 请求就是一个 action,

    name 属性:定义了一个 Struts2 请求的名字,不包含扩展名,相当于 servlet-path 去掉 / 和 .action

    class 属性:定义请求处理类,默认为 ActionSupport,在 struts-default.xml 中配置了

    method 属性:每一个 Action 类都可以应答多个 Struts2 请求,每一个请求都由具体的方法处理,方法名由 method 指定。默认为 execute()。

    result 标签:

    代表 Struts2 处理用户请求后返回的"结果",也就是响应。

    name 属性:值和 action 的 method 属性指定的方法的字符串返回值对象,默认为 success。


    Action类:
    1.不需要实现任何接口或继承任何类。

    2.在 Action 类中可以使用 setXxx() 方法接受 Struts2 请求中提交的请求参数(不论是 get 请求还是 post请求)

    3.Action 类中的 getXxx() 方法可以用来在页面上显示数据

    4.处理请求方法有固定格式:必须为 public,返回值必须是 String 类型,没有参数

    struts2的两个默认文件

    struts-default.xml

    default.properties

  • 相关阅读:
    宏中的逗号
    DES算法
    [microsoft]PE和COFF文件格式
    [流媒体]VLC主要模块
    [转][C/C++]函数名字修饰(Decorated Name)方式
    [VS]vs的宏
    [windows操作系统]system32下的那些好东西
    [微软]technet与msdn
    [windows驱动]标准驱动例程
    [windows操作系统]内核性能剖析
  • 原文地址:https://www.cnblogs.com/solverpeng/p/5643436.html
Copyright © 2011-2022 走看看