Action中的方法的访问:

访问Action的中的方法,默认情况下只能访问execute方法.那么多次请求就不能提交到一个Action.能不能一个模块的多次请求提交到一个Action中?

* 需要使用<action>标签中一个属性method:

<action name="book_add" class="cn.itcast.struts2.demo4.BookAction" method="add"/>

<action name="book_mod" class="cn.itcast.struts2.demo4.BookAction" method="mod"/>

<action name="book_del" class="cn.itcast.struts2.demo4.BookAction" method="del"/>

<action name="book_find" class="cn.itcast.struts2.demo4.BookAction" method="find"/>

* 编写Action的时候:

public class BookAction extends ActionSupport{

public String add() throws Exception {

System.out.println("添加图书...");

return NONE;

}

public String mod() throws Exception {

System.out.println("修改图书...");

return NONE;

}

public String del() throws Exception {

System.out.println("删除图书...");

return NONE;

}

public String find() throws Exception {

System.out.println("查询图书...");

return NONE;

}

}

***** 采用通配符的配置:

* 不使用通配符在配置Action的时候 需要配置很多次.使用了通配符的话,只配置一个就OK.

* 条件:

* 访问的路径和方法名存在某种关系就可以使用.

页面:

<h1>客户管理</h1>

<a href="${ pageContext.request.contextPath }/user_add.action">添加客户</a>

<a href="${ pageContext.request.contextPath }/user_mod.action">修改客户</a>

<a href="${ pageContext.request.contextPath }/user_del.action">删除客户</a>

<a href="${ pageContext.request.contextPath }/user_find.action">查询客户</a>

配置Action:

<action name="user_*" class="cn.itcast.struts2.demo4.UserAction" method="{1}"/>

*号代表是任意字符.{1}代表通配符中的第一个*号所代表的内容.

动态方法访问:

1.开启一个常量:

<constant name="struts.enable.DynamicMethodInvocation" value="true"/>

2.在页面中编写路径:

<a href="${ pageContext.request.contextPath }/order!add.action">添加订单</a>

<a href="${ pageContext.request.contextPath }/order!mod.action">修改订单</a>

<a href="${ pageContext.request.contextPath }/order!del.action">删除订单</a>

<a href="${ pageContext.request.contextPath }/order!find.action">查询订单</a>

***** 写法:  action的name!方法名.action

3.在struts.xml配置

<action name="order" class="cn.itcast.struts2.demo4.OrderAction"/>

action 方法的访问的更多相关文章

  1. Asp.net mvc 中Action 方法的执行(一)

    [toc] 在 Aps.net mvc 应用中对请求的处理最终都是转换为对某个 Controller 中的某个 Action 方法的调用,因此,要对一个请求进行处理,第一步,需要根据请求解析出对应的 ...

  2. Struts2(四):在Action中如何访问Web资源

    1.什么WEB资源? HttpServletRequest,HttpServletRespone,HttpApplication,ServletContext,HttpSession等原生Servle ...

  3. [原创]java WEB学习笔记55:Struts2学习之路---详解struts2 中 Action,如何访问web 资源,解耦方式(使用 ActionContext,实现 XxxAware 接口),耦合方式(通过ServletActionContext,通过实现 ServletRequestAware, ServletContextAware 等接口的方式)

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  4. Asp.net mvc 中Action 方法的执行(二)

    [toc] 前面介绍了 Action 执行过程中的几个基本的组件,这里介绍 Action 方法的参数绑定. 数据来源 为 Action 方法提供参数绑定的原始数据来源于当前的 Http 请求,可能包含 ...

  5. MVC教程五:Action方法的返回类型

    MVC中的Action方法的返回值一般有以下几种: 类型 s说明 EmptyResult 不进行任何操作 ContentResult 将指定内容作为文本输出 JsonResult 输出JSON字符串 ...

  6. TempData["a"]多个Action方法之前共享数据

    ViewData["a"]只可以在自己视图的页面里被访问,但TempData["a"]可以多个Action方法之前共享数据,比如在 @{Html.RenderA ...

  7. Action方法调用

    一.Action访问路径 Action的访问路径是由struts.xml文件中配置的Action所在包的命名空间,Action的名字和常struts.action.extension共同决定的 例如: ...

  8. Ajax跨域请求action方法,无法传递及接收cookie信息(应用于系统登录认证及退出)解决方案

    最近的项目中涉及到了应用ajax请求后台系统登录,身份认证失败,经过不断的调试终于找到解决方案. 应用场景: 项目测试环境:前端应用HTML,js,jQuery ajax请求,部署在Apache服务器 ...

  9. Asp.net Controller中View 和Action方法认证Authorize 及对AuthorizeAttribute扩展

    Asp.net Controller中View和Action方法认证Authorize 在建立Web 站点安全性时 1.登录后才可访问系统文件 ——限制 Forms认证 <authenticat ...

随机推荐

  1. 边框(border)边距(margin)和间隙(padding)属性的区别

    边框属性(border):用来设定一个元素的边线.边距属性(margin):用来设置一个元素所占空间的边缘到相邻元素之间的距离.间隙属性(padding):用来设置元素内容到元素边界的距离.这三个属性 ...

  2. Centos6.5搭建java开发环境

    一.安装jdk 1.查看Linux自带的JDK是否已安装 java –version 如果出现openjdk,最好还是先卸载掉openjdk,在安装sun公司的jdk. 2.查看jdk信息 rpm - ...

  3. SCP 命令(转)

    \ svn 删除所有的 .svn文件 find . -name .svn -type d -exec rm -fr {} \; linux之cp/scp命令+scp命令详解   名称:cp 使用权限: ...

  4. Mysql存储过程查询结果赋值到变量的方法

    Mysql存储过程查询结果赋值到变量的方法   把查询结果赋值到变量,大部分情况下使用游标来完成,但是如果明确知道查询结果只有一行(例如统计记录的数量,某个字段求和等),其实可以使用set或into的 ...

  5. tomcat启动异常(严重: Dispatcher initialization failed Unable to load configuration. - [unknown location] )

    严重: Dispatcher initialization failed Unable to load configuration. - [unknown location] at com.opens ...

  6. VMnet1和V8

    vmware默认使用了两个虚拟网卡: vmnet1 v1 vmnet8 v8 vmnet1是host-only,也就是说,选择用vmnet1的话就相当于VMware给你提供了一个虚拟交换机,仅将虚拟机 ...

  7. phpmyadmin中访问时出现2002 无法登录 MySQL 服务器

    phpmyadmin中访问时出现2002 无法登录 MySQL 服务器! 解决方法如下: 修改phpmyadmin目录中libraries文件夹下的config.default.php文件 $cfg[ ...

  8. POJ 1265 Area

    有一种定理,叫毕克定理....                             Area Time Limit: 1000MS   Memory Limit: 10000K Total Sub ...

  9. .net的一些新语法的整理

    using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Tex ...

  10. Javascript高级程序设计——面向对象之实现继承

    原型链: 构造函数中都有一个prototype属性指针,这个指针指向原型对象,而创建的实例也有指向这个原型对象的指针__proto__.当实例查找方法时先在实例上找,找不到再通过__proto__到原 ...