一、method参数

action

package com.pb.web.action;

public class HourseAction {

    public String add(){
System.out.println("执行添加操作!");
return "success";
}
public String update(){
System.out.println("执行更新操作!");
return "success";
}
public String delete(){
System.out.println("执行删除操作!");
return "success";
} }

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> <!-- <constant name="struts.enable.DynamicMethodInvocation" value="false" />
<constant name="struts.devMode" value="false" /> <package name="default" namespace="/" extends="struts-default"> <default-action-ref name="index" /> <global-results>
<result name="error">/error.jsp</result>
</global-results> <global-exception-mappings>
<exception-mapping exception="java.lang.Exception" result="error"/>
</global-exception-mappings> <action name="index">
<result type="redirectAction">
<param name="actionName">HelloWorld</param>
<param name="namespace">/example</param>
</result>
</action>
</package> <include file="example.xml"/> --> <!-- Add packages here -->
<constant name="struts.devMode" value="true" />
<package name="default" namespace="/" extends="struts-default">
<action name="hourse_add" class="com.pb.web.action.HourseAction" method="add">
<result>
addsuccess.jsp
</result>
</action>
<action name="hourse_update" class="com.pb.web.action.HourseAction" method="update">
<result>
updatesuccess.jsp
</result>
</action>
<action name="hourse_del" class="com.pb.web.action.HourseAction" method="delete">
<result>
deletesuccess.jsp
</result>
</action>
</package>
</struts>

默认action配置

<!--默认action  -->
<default-action-ref name="index" />
<action name="index">
<result>
index.jsp
</result>
</action>

二、使用动态方法调用

package com.pb.web.action;

public class UserAction {

    public String add(){
System.out.println("执行添加操作!");
return "success";
}
public String update(){
System.out.println("执行更新操作!");
return "success";
}
public String delete(){
System.out.println("执行删除操作!");
return "success";
}
}

struts.xml

<package name="default" namespace="/" extends="struts-default">
<action name="user" class="com.pb.web.action.UserAction">
<result>
userSuccess.jsp
</result>
</action>

页面

<!--  使用感叹号,调用指定方法-->
<form action="user!add">
<input type="submit" value="添加"/>
</form>
<form action="user!update">
<input type="submit" value="更新"/>
</form>
<form action="user!delete">
<input type="submit" value="删除"/>
</form>

另一种写法

<!--  使用感叹号,调用指定方法-->
<form action="user!add.action">
<input type="submit" value="添加"/>
</form>
<form action="user!update.action">
<input type="submit" value="更新"/>
</form>
<form action="user!delete.action">
<input type="submit" value="删除"/>
</form>

三、使用通配符简化配置

action

package com.pb.web.action;

public class HourseAction {

    public String add(){
System.out.println("执行添加操作!");
return "success";
}
public String update(){
System.out.println("执行更新操作!");
return "success";
}
public String delete(){
System.out.println("执行删除操作!");
return "success";
} }

struts.xml

<constant name="struts.devMode" value="true" />
<package name="default" namespace="/" extends="struts-default">
<action name="hourse_*" class="com.pb.web.action.HourseAction" method="{1}">
<result>
{1}success.jsp
</result>
</action>
</package>

页面

<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="hourse_add">
<input type="submit" value="添加"/>
</form>
<form action="hourse_update">
<input type="submit" value="更新"/>
</form>
<form action="hourse_delete">
<input type="submit" value="删除"/>
</form>
</body>
</html>

Struts2(五)Action二配置的更多相关文章

  1. Struts2学习笔记二 配置详解

    Struts2执行流程 1.简单执行流程,如下所示: 在浏览器输入请求地址,首先会被过滤器处理,然后查找主配置文件,然后根据地址栏中输入的/hello去每个package中查找为/hello的name ...

  2. java之struts2的action优化配置

    当一个Action处理类中处理多个业务时,action的配置 文件将会急剧增加,导致配置文件很臃肿的问题. struts2提供了两种方案来解决这个问题.一种是动态方法调用,另一种是使用通配符来配置Ac ...

  3. Struts2学习笔记(二)——配置详解

    1.Struts2配置文件加载顺序: default.properties(默认常量配置) struts-default.xml(默认配置文件,主要配置bean和拦截器) struts-plugin. ...

  4. Struts2(五)常量的配置

    Struts2 常量大多在 默认的配置文件中已经配置好,但根据用户的需求不同,开发的要求不同,需要修改这些常量值,修改的方法就是在配置的文件对常量进行重新配置 在struts.xml 文件中使用< ...

  5. Struts2(五.用户注册的实现及整合Action的配置方法)

    一.用户注册功能 register.jsp页面 若是jquery ajax方式提交给action,还要回到jquery,控制权在jquery若是表单方式提交给action,控制权交给action &l ...

  6. Struts2基础学习(二)—Action

    一.ActionSupport      为了让用户开发的Action类更加规范,Struts2提供了一个Action接口,这个接口定义了Struts2的Action处理类应该实现的规范.下面是标准A ...

  7. Struts2框架学习(二) Action

    Struts2框架学习(二) Action Struts2框架中的Action类是一个单独的javabean对象.不像Struts1中还要去继承HttpServlet,耦合度减小了. 1,流程 拦截器 ...

  8. struts2 之 Action的优化配置

    总结:struts2种action的配置文件会随着业务的增加而增加,导致配置文件膨胀.struts2中提供了三种方案来解决这个问题: 1. 动态方法调用来实现. 2. 通配符配置来解决. 3. 使用注 ...

  9. struts2 ,web.xml中配置为/*.action,运行报错Invalid <url-pattern> /*.action in filter mapp

    首先,修改成: <filter-mapping>  <filter-name>struts2</filter-name>  <url-pattern>/ ...

随机推荐

  1. ROS知识(14)----局部避障的动态窗口算法(DWA)及其调试的方法

    Dynamic Window Approach(DWA)是重要的局部轨迹规划算法,ROS中使用了DWA算法获得了很好的局部路径规划的效果.具体的教程可参考官方的导航调试资料Navigation Tun ...

  2. 将代码库从 SVN 迁移至 Git 并保留所有 commit 记录

    公司内部原本使用 SVN 进行版本控制,但随着 Github 的流行我个人的代码管理习惯逐渐转变.虽然公司项目并非开源,SVN 所具有的标准 trunk / branches / tags 结构完全够 ...

  3. HDU 2222 Keywords Search 【AC自动机模板】

    询问有多少个模式串出现在了文本串里面.将模式串插入Trie树中,然后跑一边AC自动机统计一下就哦了. 献上一份模板. #include <cstdio> #include <cstr ...

  4. 21扩展IEnumerable<T>泛型接口自定义LINQ的扩展方法

    LINQ方法实际上是对IEnumerable<TSource>的扩展,如图:   本篇自定义一个MyWhere方法,达到与Where相同的效果.     使用LINQ自带的Where方法 ...

  5. UITextView 详解

    UITextView 边框的设置   设置光标的位置   导入QuartzCote框架: #import <QuartzCore/QuartzCore.h> textView.layer. ...

  6. 学习Android Studio里的Gradle

    一直听说Gradle很强大,只是偶尔用Android Studio创建Demo的时候看到他一次,今天抽个时间完整记录一下. 1.gradle位置 Android Studio项目创建好之后,默认有3个 ...

  7. easyDarwin--开源流媒体实现

    EasyDarwin 是由国内开源流媒体团队开发和维护的一款开源流媒体平台框架,从2012年12月创建并发展至今,从原有的单服务的流媒体服务器形式,扩展成现在的云平台架构的开源项目,更好地帮助广大流媒 ...

  8. eclipse Reference 功能之——项目之间的引用

    i'm sorry, i forgot this article where i found. that it is referenced. 以前也研究过Eclipse里Web Project引用Ja ...

  9. 约合¥1720 LG法国称G Watch将于6月开卖

    近来LG法国官方透露音讯称旗下首款智能手表G Watch将于本年6月份正式出售,预定报价为199欧元(约合¥1720). 这就意味着这款智能手表会在googleI/O大会完成之后就会开端出售,从goo ...

  10. ELK+Filebeat 安装配置入门

    本文地址 http://www.cnblogs.com/jasonxuli/p/6397244.html   https://www.elastic.co 上,elasticsearch,logsta ...