Strusts2简单入门教程

1.项目结构
我使用的工具是Interiij idea,但是项目结构和Eclipse相似,可以参考创建项目。
这里写图片描述
这里只是添加了几个主要的jar包,实现简单的功能已经足够了。
2.web.xml配置

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">
    <!-- 默认初始化页面 -->
    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>

    <!-- Struts2过滤器 -->
    <filter>
        <!-- 过滤器名称 -->
        <filter-name>struts2</filter-name>
        <!-- 过滤器类 2.1版本以上-->
        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
        <!--2.1版本以下
            <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
        -->
    </filter>
    <!-- Struts2过滤器映射 -->
    <filter-mapping>
        <!-- 过滤器名称,与上面的一致,必须相同 -->
        <filter-name>struts2</filter-name>
        <!-- 过滤器拦截的请求 -->
        <url-pattern>/*</url-pattern>
    </filter-mapping>
</web-app>

3.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="com.action" extends="struts-default" namespace="/">
        <!-- 定义action,没有method属性,则调用的是execute() -->
        <action name="helloAction" class="com.action.HelloAction">
            <!-- 定义处理成功后的映射页面 -->
            <result name="success">/WEB-INF/jsp/success.jsp</result>
            <!-- 定义处理失败后的映射页面 -->
            <result name="error">/WEB-INF/jsp/error.jsp</result>
        </action>
        <!-- 定义action,method属性为add,则调用的是add() -->
        <action name="add" class="com.action.HelloAction" method="add">
            <!-- 定义处理成功后的映射页面 -->
            <result name="success">/WEB-INF/jsp/addSuccess.jsp</result>
            <!-- 定义处理失败后的映射页面 -->
            <result name="error">/WEB-INF/jsp/error.jsp</result>
        </action>
        <!-- action name 为delete*,指的是请求以delete开头的都使用这个action,*为通配符,
                method属性为{1},1代表的是第几个*,如果name为deleteAll,则调用的是方法All() ,
                success返回的就是All.jsp-->
        <action name="delete*" class="com.action.HelloAction" method="{1}">
            <!-- 定义处理成功后的映射页面 -->
            <result name="success">/WEB-INF/jsp/{1}.jsp</result>
            <!-- 定义处理失败后的映射页面 -->
            <result name="error">/WEB-INF/jsp/error.jsp</result>
        </action>

    </package>
</struts>

4.HelloAction.java

package com.action;

import com.opensymphony.xwork2.ActionSupport;

public class HelloAction extends ActionSupport {
    //重写ActionSupport 的execute()方法
    @Override
    public String execute() throws Exception {
        return SUCCESS;
    }

    public String add() throws Exception {
        return SUCCESS;
    }

    public String Edit() throws Exception {
        return SUCCESS;
    }
}

5.index.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
    <head>
        <title>My JSP 'index.jsp' starting page</title>
    </head>

    <body>
        <a href="helloAction.action">请求Struts2</a>
        <a href="add.action">添加</a>
        <a href="deleteEdit.action">删除编辑</a>
    </body>
</html>

6.success.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>Success</title>
    </head>
    <body>
        第一个Struts2程序!<br>
    </body>
</html>

7.error.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>Error</title>
    </head>
    <body>
    请求失败!<br>
    </body>
</html>

8.addSuccess.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>addSuccess</title>
</head>
<body>
    <a>Add Successful!</a>
</body>
</html>

9.Edit.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Delete Edit</title>
</head>
<body>
    <a>Delete Edit Successful!</a>
</body>
</html>

10.运行结果
这里写图片描述
11.请求Struts2
这里写图片描述
12.添加
这里写图片描述
13.删除编辑
这里写图片描述

14.总结
这只是一个简单的教程,希望能够帮到大家,代码里有一些命名不规范,大家见谅,如果有什么问题,请大家在下面留言,与君共勉。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值