1.在Struts配置文件的<package   中的 namespace默认是namesopace="/".

当生成namespace=“abc/”(abc是自己定义的,类似于html里的css样式中的class)那么在index.jsp测试跳转的<a  href ="abc/test01.action"></a>

  注意:.action后缀,在没有更改默认的情况下,可以不写,默认就是.action。

   这时候就必须在前面加abc/   解释:也就是当action在处理请求的时候是寻找abc/下的test01.action,然后执行系一部的转发跳转操作。

  在Struts.xml 配置文件的<action   中的 name=“test01”前面可以不加abc/。

2.修改默认值

要在<struts>标签下加<constant></constant>.   constant里面name="struts.action.extension"是默认值,不可以改,value=""可以更改(指更改默认后缀.action)

解释:上图中的valu=“do,action,,”只的是后缀可以说.do或.action或者是什么都不加的

3.result

result中的name=“success”是默认返回值,类型是String型

4.action 中的class指的是com.hanqi.action包下的TestAction类,method="test"指的是类中的test方法

具体代码如下:

 

  

<%@ 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>
首页
<br><br> <a href="abc/test01.do">测试页面01</a> <br><br>
<a href="test02.action">测试页面02</a> </body>
</html>

  

<%@ 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>
测试页面01 </body>
</html>

  

<%@ 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>
登录页
<br><br>
<form action="Login.action" method="post"> 用户名:<input type="text" name="username" />
<br><br>
密码:<input type="password" name="password" />
<input type="submit" value="登录">
</form>
</body>
</html>

  

<?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.action.extension" value="do,action,,"></constant> <!-- package对功能模块进行分组管理 -->
<package name="index" extends="struts-default"
namespace="/"> <!-- action 处理的请求 --> <!-- action 处理的默认请求 -->
<action name="test01" class="com.opensymphony.xwork2.ActionSupport"
method="execute">
<result name="success">/WEB-INF/pages/test01.jsp</result>
</action> <action name="test02" class="com.hanqi.action.TestAction"
method="test">
<result name="ok" >/WEB-INF/pages/test02.jsp</result>
<result name="notok">/WEB-INF/pages/error.jsp</result> </action>
<!-- 登入 -->
<action name="Login" class="com.hanqi.action.TestAction"
method="login">
<result>/WEB-INF/pages/Main.jsp</result>
<result name="fail" >/WEB-INF/pages/error.jsp</result>
</action> </package> </struts>

  

package com.hanqi.action;
//自定义的Action 类
public class TestAction { //Action 方法
public String test()
{
int i=1;
if(i==1)
{
return "ok";
}
else
{
return "notok";
}
} //验证登录的方法
public String login ()
{
String rtn ="fail";//定义返回值,<result name="fail">
//验证登录
System.out.println("username="+username+ " password="+password); if(username!=null&&password!=null
&&username.equals("admin")&&password.equals("123456"))
{
rtn="success";
}
return rtn;
} private String username;
private String password; public String getUsername() {
return username;
} public void setUsername(String username) {
this.username = username;
} public String getPassword() {
return password;
} public void setPassword(String password) {
this.password = password;
} }

  

Struts2整理+课堂代码+注意事项的更多相关文章

  1. struts2最新s2-016代码执行漏洞CVE-2013-2251

    这是一个代码执行漏洞,利用java代码来执行系统命令.   影响版本:Struts 2.0.0 – Struts 2.3.15   漏洞说明: The Struts 2 DefaultActionMa ...

  2. struts2更新版本操作有关事项备注

    struts2更新版本操作有关事项备注, 更新主要jar包:struts2-convention-plugin-version,struts2-core-version, struts2-spring ...

  3. WPF代码注意事项,开发常见问题,知识总结

    代码注意事项: 1.代码实现的样式赋值 XXX.Style = TryFindResource("StyleName") as Style; 2.WPF中FindName方法的使用 ...

  4. Android——数据存储(课堂代码整理:SharedPreferences存储和手机内部文件存储)

    layout文件: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:an ...

  5. ActiveMQ的学习整理(代码实现PTP,以及Pub/Sub)

    (一)由于在实习过程中需要用到ActiveMQ,在网上看了很多文章,现在整理出来以防忘记. (二)这篇文章比较适合之前没有接触过的同学,在看下面文章的过程中,建议先学习参考链接中的知识点,然后自己再参 ...

  6. Android 写模块化代码注意事项

    模块化代码方便抽离注意事项 1. 访问控制符使用 多使用protect,包内访问控制,final关键字 2.  工具类最好不要相互引用,需要相互引用的地方考虑写到一个类里面 3.   Activity ...

  7. s2-029 Struts2 标签远程代码执行分析(含POC)

    1.标签介绍 Struts2标签库提供了主题.模板支持,极大地简化了视图页面的编写,而且,struts2的主题.模板都提供了很好的扩展性.实现了更好的代码复用.Struts2允许在页面中使用自定义组件 ...

  8. 漏洞预警 | Apache Struts2 曝任意代码执行漏洞 (S2-045)

    近日,Apache官方发布Apache Struts 2.3.5–2.3.31版本及2.5–2.5.10版本存在远程代码执行漏洞(CNNVD-201703-152 ,CVE-2017-5638)的紧急 ...

  9. Struts2配置文件复用代码【web.xml、struts.xml、常量配置】

    web.xml的分发器代码: <!-- 引入struts核心过滤器 --> <filter> <filter-name>struts2</filter-nam ...

随机推荐

  1. 第十七篇:使用窗口的cache属性加速SOUI的渲染

    内容渲染速度是决定一个UI成败的关键.无论UI做得多华丽,没有速度都没有意义. 在MFC,WTL等开发框架下,每个控件都是一个窗口,窗口只需要画前景,背景.因为窗口之间的内容不需要做混合,一个子窗口的 ...

  2. Android之Adapter用法总结-(转)

    Android之Adapter用法总结 1.概念 Adapter是连接后端数据和前端显示的适配器接口,是数据和UI(View)之间一个重要的纽带.在常见的View(List View,Grid Vie ...

  3. 安装pyspider

    费了三个小时,换了很多版本的Python pip lxml,最终选择安装anaconda2 非常顺利 运行pyspider后localhost:500正常显示 开森

  4. hdfs 名称节点和数据节点

    名字节点(NameNode )是HDFS主从结构中主节点上运行的主要进程,它指导主从结构中的从节点,数据节点(DataNode)执行底层的I/O任务. 名字节点是HDFS的书记员,维护着整个文件系统的 ...

  5. Loadrunner在场景中添加多个负载机报错:Action.c(38): Error -26488: Could not obtain information about submitted解决方法

    Error -26488: Could not obtain information about submitted file "E:\.jpg": _stat32 rc=-1, ...

  6. Android学习系列(41)--Android Studio简单使用

    1. 环境 UBUNTU 14.04 + Android Studio 0.8.2 2. 安装jdk openjdk-7是一个很好的选择: sudo apt-get update sudo apt-g ...

  7. 转:Delphi 回调函数及例子

    http://anony3721.blog.163.com/blog/static/5119742010866050589/ { http://anony3721.blog.163.com/blog/ ...

  8. 不同java 版本的新功能

    Java 5 泛型 自动装箱/拆箱 增强的for 类型安全的枚举 可变参数 静态导入 Annotation Concurrent Package Java 6 Web Service 支持Annota ...

  9. javascript document.compatMode属性

    文档模式在开发中貌似很少用到,最常见的是就是在获取页面宽高的时候,比如文档宽高,可见区域宽高等. IE对盒模型的渲染在 Standards Mode和Quirks Mode是有很大差别的,在Stand ...

  10. POJ3613 Cow Relays(矩阵快速幂)

    题目大概要求从起点到终点恰好经过k条边的最短路. 离散数学告诉我们邻接矩阵的k次幂就能得出恰好经过k条路的信息,比如POJ2778. 这题也一样,矩阵的幂运算定义成min,而min满足结合律,所以可以 ...