设置Struts 2处理的请求后缀及Action调用
1、在struts2中默认处理的请求后缀为action,我们可以修改struts.xml 和struts.properties来修改默认的配置,在struts.xml中<struts>添加子接点<constant name=”struts.action.extension”
value=”do” /> 或者是修改struts.properties文件 添加struts.action.extension = do这都是一样的效果

     注意:struts.xml 和struts.properties的都放在src下发布的时候会自动拷贝到WEB-INF/classes下

2、如何调用Action的方法 这是本章的重点

1) 如果在Action中只有一个 execute方法那么配置好后就会自动访问这个方法。如果方法名字不是execute 那么我们需要在struts.xml中的Action接点添加一个method属性为该方法签名,如下:

<action method=”hello” name=”helloAction” class=”com.struts2.chapter5.HelloAction”></action>

这样就会调用hello的方法!

2)这是一个控制器负责处理一个请求的方式,但这样就会造成很多的Action类,给维护带来困难。所以可以让一个Action可以处理多个不同的请求。对于一个学生信息管理模块来说,通过一个Action处理学生信息的添、查、改、删(CRUD)请求,可以大大减少 Action的数量,有效降低维护成本。下面代码让我们可以使用通配符来操作

public class StudentAction{

public String insertStudent(){…}

public String updateStudent(){…}

}

<action name=”*Student” class=”com.struts2.chapter5.StudentAction” method=”{1}”>

<result name=”success”>/result.jsp</result>

</action>

仔细观察一下,发现name属性中有一个”*”号,这是一个通配符,说白了就是方法名称,此时method必须配置成method={1},才能找到对应的方法。现在,如果想调用insertStudent方法,则可以输入下面的URL进行访问:http://localhost:8081 /Struts2Demo/ insertStudent.do,如果想调用updateStudent方法,则输入http://localhost:8081/Struts2Demo/updateStudent.do即可。格式如何定义,完全由程序员决定,”*”放在什么地方,也是可以自定义的。

3)对于上面的StudentAction我们还可以这样配置

<action name=”studentAction” class=”com.struts2.demo.StudentAction”>

   <result name=”success”>/result.jsp</result>

  </action>

调用Action的方法还可以通过”Action配置名!方法名.扩展名”

http://localhost:8081/Struts2Demo/studentAction!insertStudent.do

http://localhost:8081/Struts2Demo/studentAction!updateStudent.do

修改访问的后缀contant的更多相关文章

  1. struts2 修改action的后缀

    struts2 修改action的后缀 struts2 的默认后缀是 .action 虽然很直观,但是很烦琐.很多人喜欢将请求的后缀改为 .do 在struts2中修改action后缀有两种比较简单的 ...

  2. Linux学习笔记:touch新建文件、修改访问、改动时间

    touch用于创建新的空文件或者修改已有文件的时间戳. 语法:touch file.txt 如果file存在,使用touch指令可更改这个文件或目录的日期时间,包括存取时间和更改时间. 如果file不 ...

  3. IIS下无法访问.ini后缀文件

    环境: windows server 2003 R2.IIS6 问题: 无法访问网站下的.ini后缀的文件 解决办法: 添加ini文件的MIME映射,让IIS能下载扩展名是ini的文件 添加路径:相应 ...

  4. Python批量修改文件名与后缀

    引言: 有时因为文件版本的更新,后缀名会发生变化,例如Word13的docx到Word16的doc,又例如我们想修改音频文件的后缀.一个一个修改后缀名往往很麻烦,于是我们便可以写一个Python的脚本 ...

  5. Tomcat改端口号;修改访问路径,以及配置Context 标签以后Tomcat启动不了

    修改tomcat端口号: <Connector port="8080" protocol="HTTP/1.1" connectionTimeout=&qu ...

  6. .html 页面修改成 .jsp 后缀后中文乱码解决办法。

    .html 后缀的文件,如果直接将 .html后缀改成 .jsp 后缀,则会乱码. 正确方法如下: 将如图的代码中 html  声明去掉,然后加上这段代码:<%@ page language=& ...

  7. linux-批量修改目录下后缀shell

    #!/bin/bashcd /optrename .sh .shell *.shecho "后缀修改成功"

  8. 通过反射 修改访问和修改属性的值 Day25

    package com.sxt.field; /* * 通过反射拿到属性值 * 修改public属性值 * 修改private属性值 * 缺点:可读性差:代码复杂 * 优点:灵活:可以访问修改priv ...

  9. layui图片上传之后后台如何修改图片的后缀名以及返回数据给前台

    const pathLib = require('path');//引入node.js下的一个path模块的方法,主要处理文件的名字等工作,具体可看文档 const fs = require(''fs ...

随机推荐

  1. Java进阶(三十) 判断字符串编码类型

    java 判断字符串编码类型 public static String getEncoding(String str) { String encode = "GB2312"; tr ...

  2. linux服务器批量部署应用系统shell脚本(Tomcat/jetty)

    linux服务器批量部署应用系统shell脚本: 1.请更换代码内的服务器地址(Tomcat或jetty服务器) serverRoot=/home/undoner/java_tool/apache-t ...

  3. (四十二)tableView的滑动编辑和刷新 -局部刷新和删除刷新 -待解决问题

    tableView的局部刷新有两个方法: 注意这个方法只能用于模型数据的行数不变,否则会出错. [self.tableView reloadRowsAtIndexPaths:<#(NSArray ...

  4. Live555 直播源 以及MediaSubsession

    /* * H264DeviceSource.hh * * Created on: 2014年7月19日 * Author: zjzhang */ #ifndef H264DEVICESOURCE_HH ...

  5. (NO.00002)iOS游戏精灵战争雏形(四)

    在Xcode打开MainScene,添加初始化代码如下: -(void)didLoadFromCCB{ NSAssert(_sprite1, @"_sprite1 must not nil& ...

  6. 分布式进阶(十八) 分布式缓存之Memcached

    分布式缓存 分布式缓存出于如下考虑:首先是缓存本身的水平线性扩展问题,其次是缓存大并发下本身的性能问题,再次避免缓存的单点故障问题(多副本和副本一致性). 分布式缓存的核心技术包括首先是内存本身的管理 ...

  7. 集群通信组件Tribes之整体介绍

    接下来一系列文章会对集群通信框架tribes进行源码级别的分析,欢迎讨论. 把若干机器组合成一个集群,集群为了能协同工作,成员之间的通信是必不可少的,当然可以说这也是集群实现中重点需要解决的核心问题, ...

  8. Android的内存分配与回收

    想写一篇关于android的内存分配和回收文章的想法来源于追查一个魅族手机图片滑动卡顿问题,我们想了很多办法还是没有避免他不停的GC,所以就打算详细的看看内存分配和GC的原理,为什么会不断的GC,GC ...

  9. [SqlServer]如何向数据库插入带有单引号(')的字符串

    今天在做一个复制功能的时候,发现存在单引号字符串与INSERT INTO 语句的' '产生冲突. 在网络上找到了一个这样功能 如何向数据库插入带有单引号(')的字符串 用SQL语句往数据库某字段(字符 ...

  10. HDTV(1920x1080)码率和视频质量关系的研究 1 (前期准备)

    Hans Hoffmann等人在论文<Studies on the Bit Rate Requirements for a HDTV Format With 1920 x 1080 pixel ...