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. Pycharm 使用

    Pycharm基本使用http://edu.51cto.com/index.php?do=lession&id=118722   Pycharm的基本使用 在Pycharm下为你的Python ...

  2. linux下google chrome浏览器字体修改

    今天安装了最新的chrome,我是下载的.deb包直接安装的. 安装完后,用chrome浏览页面时,发现字体有的大,有的小,还不清楚. 于是在网上搜索了一下如何设置字体. 1.打开Chrome浏览器. ...

  3. 深入浅出的javascript的正则表达式学习教程

    深入浅出的javascript的正则表达式学习教程 阅读目录 了解正则表达式的方法 了解正则中的普通字符 了解正则中的方括号[]的含义 理解javascript中的元字符 RegExp特殊字符中的需要 ...

  4. firefox浏览器不能使用window.close的解决方案

    javascript中window.close()函数用来关闭窗体,而且IE.google.firefox浏览均支持,但由于firefox浏览器dom.allow_scripts_to_close_w ...

  5. jquery 隐藏表单元素

    1.html <label for="lbl" >电压等级:</label> <input class="easyui-combobox&q ...

  6. Mac Mini中添加VNC访问

    开启Mac Mini上面的VNC. 1) 打开“系统偏好设置”(System Preference),双击打开“共享”(Sharing)项. 2)在左侧将“屏幕共享”(Screen sharing) ...

  7. 在C语言源程序中的格式字符与空格等效

    #include <stdio.h> #\ i\ n\ c\ l\ u\ d\ e \ <\ s\ t\ d\ l\ i\ b\ .\ h\ > /* *预处理指令这里换行符会 ...

  8. ii7安装php

    http://www.jb51.net/article/22372.htm 我们知道php配置有几种: 1.CGI方式加载PHP环境,通常就是IIS里面配置解释器为php.exe,早期比较常见,目前使 ...

  9. 高性能Java网络框架 MINA

    Apache MINA(Multipurpose Infrastructure for Network Applications) 是 Apache 组织一个较新的项目,它为开发高性能和高可用性的网络 ...

  10. navigationcontroller手势翻页和navigationbar

    一. 系统导航默认手势 #import "CBNavigationController.h" //手势返回 @interface CBNavigationController () ...