Struts2(五)Action二配置
一、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二配置的更多相关文章
- Struts2学习笔记二 配置详解
Struts2执行流程 1.简单执行流程,如下所示: 在浏览器输入请求地址,首先会被过滤器处理,然后查找主配置文件,然后根据地址栏中输入的/hello去每个package中查找为/hello的name ...
- java之struts2的action优化配置
当一个Action处理类中处理多个业务时,action的配置 文件将会急剧增加,导致配置文件很臃肿的问题. struts2提供了两种方案来解决这个问题.一种是动态方法调用,另一种是使用通配符来配置Ac ...
- Struts2学习笔记(二)——配置详解
1.Struts2配置文件加载顺序: default.properties(默认常量配置) struts-default.xml(默认配置文件,主要配置bean和拦截器) struts-plugin. ...
- Struts2(五)常量的配置
Struts2 常量大多在 默认的配置文件中已经配置好,但根据用户的需求不同,开发的要求不同,需要修改这些常量值,修改的方法就是在配置的文件对常量进行重新配置 在struts.xml 文件中使用< ...
- Struts2(五.用户注册的实现及整合Action的配置方法)
一.用户注册功能 register.jsp页面 若是jquery ajax方式提交给action,还要回到jquery,控制权在jquery若是表单方式提交给action,控制权交给action &l ...
- Struts2基础学习(二)—Action
一.ActionSupport 为了让用户开发的Action类更加规范,Struts2提供了一个Action接口,这个接口定义了Struts2的Action处理类应该实现的规范.下面是标准A ...
- Struts2框架学习(二) Action
Struts2框架学习(二) Action Struts2框架中的Action类是一个单独的javabean对象.不像Struts1中还要去继承HttpServlet,耦合度减小了. 1,流程 拦截器 ...
- struts2 之 Action的优化配置
总结:struts2种action的配置文件会随着业务的增加而增加,导致配置文件膨胀.struts2中提供了三种方案来解决这个问题: 1. 动态方法调用来实现. 2. 通配符配置来解决. 3. 使用注 ...
- struts2 ,web.xml中配置为/*.action,运行报错Invalid <url-pattern> /*.action in filter mapp
首先,修改成: <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/ ...
随机推荐
- ROS知识(14)----局部避障的动态窗口算法(DWA)及其调试的方法
Dynamic Window Approach(DWA)是重要的局部轨迹规划算法,ROS中使用了DWA算法获得了很好的局部路径规划的效果.具体的教程可参考官方的导航调试资料Navigation Tun ...
- 将代码库从 SVN 迁移至 Git 并保留所有 commit 记录
公司内部原本使用 SVN 进行版本控制,但随着 Github 的流行我个人的代码管理习惯逐渐转变.虽然公司项目并非开源,SVN 所具有的标准 trunk / branches / tags 结构完全够 ...
- HDU 2222 Keywords Search 【AC自动机模板】
询问有多少个模式串出现在了文本串里面.将模式串插入Trie树中,然后跑一边AC自动机统计一下就哦了. 献上一份模板. #include <cstdio> #include <cstr ...
- 21扩展IEnumerable<T>泛型接口自定义LINQ的扩展方法
LINQ方法实际上是对IEnumerable<TSource>的扩展,如图: 本篇自定义一个MyWhere方法,达到与Where相同的效果. 使用LINQ自带的Where方法 ...
- UITextView 详解
UITextView 边框的设置 设置光标的位置 导入QuartzCote框架: #import <QuartzCore/QuartzCore.h> textView.layer. ...
- 学习Android Studio里的Gradle
一直听说Gradle很强大,只是偶尔用Android Studio创建Demo的时候看到他一次,今天抽个时间完整记录一下. 1.gradle位置 Android Studio项目创建好之后,默认有3个 ...
- easyDarwin--开源流媒体实现
EasyDarwin 是由国内开源流媒体团队开发和维护的一款开源流媒体平台框架,从2012年12月创建并发展至今,从原有的单服务的流媒体服务器形式,扩展成现在的云平台架构的开源项目,更好地帮助广大流媒 ...
- eclipse Reference 功能之——项目之间的引用
i'm sorry, i forgot this article where i found. that it is referenced. 以前也研究过Eclipse里Web Project引用Ja ...
- 约合¥1720 LG法国称G Watch将于6月开卖
近来LG法国官方透露音讯称旗下首款智能手表G Watch将于本年6月份正式出售,预定报价为199欧元(约合¥1720). 这就意味着这款智能手表会在googleI/O大会完成之后就会开端出售,从goo ...
- ELK+Filebeat 安装配置入门
本文地址 http://www.cnblogs.com/jasonxuli/p/6397244.html https://www.elastic.co 上,elasticsearch,logsta ...