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. 百度编辑器修改,不让它自动替换html标签

    在ueditor.all.js中找到 UE.plugins['defaultfilter'] = function () 注释或删掉这块代码. 注:ueditor.all.min.js 中也一样,格式 ...

  2. CSS实现底部固定

    html代码结构 <body> <div class="wrap"> <div class="head"></div& ...

  3. BootStrap学习------栅格

    使用Bootstrap前端框架-栅格 要点 1.使用Bootstrap需要引入的css和js: (1)bootstrap.min.js (2)bootstrap.min.css 2.栅格系统需要通过& ...

  4. 【8-22】java学习笔记04

    java基础类库 Scanner类(java.util.scanner) Scanner对象.hasNextXxx(),hasNext()默认方法为字符串://Returns true if this ...

  5. linux 打造man中文帮助手册

    博客转自:http://my.oschina.net/hbzhangmao/blog/354533 学IT的同学都知道, Linux是一个好东西, 但初学者往往会因为太多的命令觉得头疼, 更头疼的是所 ...

  6. Excel 使用宏批量修改单元格内指定文字为红字

    -> step 1:新建宏,进入编辑,使用如下代码: Sub Ss()Dim c As RangeFor Each c In ActiveSheet.UsedRange i = 1 While ...

  7. Oracle11安装

    图片上传失败,重新编辑 1.选择安装目录,一般设置数据库口令为system 2.环境检查 3.注册页面,直接下一步 4.点击安装按钮 5.进入安装界面 6.等待 7.直到出现下面界面,点击口令管理 8 ...

  8. [AngularJS] jQuery时代

    抹平浏览器差异的jQuery出现了 jQuery有什么 jQuery使得开发无刷新动态页面(AJAX)或者单页应用(SAP)变得 相当简单. 标准的HTML页面是静态的,被浏览器渲染后就产生了一个DO ...

  9. 【C语言入门教程】1.3 C语言“32个”关键字

    关键字是已被C语言标准作为命令.数据类型或者固定函数名的字母组合.关键字不能被用做变量名或函数名.下面列举了C语言的32个关键字,它们遵循C语言的语法使用,形成了C程序设计语言.  序号  关键字 说 ...

  10. Java Annotation自定义注解详解

    在开发过程中总能用到注解,但是从来没有自己定义过注解.最近赋闲在家,研究整理了一番,力求知其然知其所以然. 本文会尝试描述什么是注解,以及通过一个Demo来说明如何在程序中自定义注解.Demo没有实际 ...