struts2——02
来源:互联网 发布:爱宕级驱逐舰数据 编辑:程序博客网 时间:2024/06/11 10:59
分析的servlet
客户端--->web容器-->web.xml -->servlet来处理 ----->model-->数据库
<--------------------------------|
request.setAttribute(“username”,username);
//转发
request.getDis(“manager/index.jps”).forward(request,response);
---在jsp页面中 ${username}
//重定向
response.sendRiedirect();
分析 struts2
客户端----->web容器--->web.xml-->struts2过滤器--->struts.xml--->Action--->model--->数据库
<------------------------------------------------------------------------------------|
Action 要想把数据 传递给jsp
private String username;
public String getUsername(){return username;}
通过什么方式传递
<result
type="dispatcher" name="success">/manager/index.jsp</result>
Jsp =---〉 ${username}
Struts2中结果集类型
1、 每个action方法都返回一个String类型的值,struts一次请求返回什么值是由这个值确定的。
2、 在配置文件中,每一个action元素的配置都必须有result元素,每一个result对应一个action的返回值。
3、 Result有两个属性:
name:结果的名字,和action中的返回值一样,默认值为success;
type:响应结果类型,默认值为dispatcher.
在下面找到struts-default.xml文件中,如下面所示:
说明:
1、 从上述可以看出总共10种类型
2、 默认类型为ServletDispatcherResult即转发。
3、 结果类型可以是这10种结果类型的任意一种。
Dispatcher类型
(1)、 说明
Dispatcher类型是最常用的结果类型,也是struts框架默认的结果类型。
(2)、 例子
页面参照:/manager/index.jsp
Action参照:AdminAction
配置文件:struts.xml
在配置文件中,可以有两种写法:
下面的图说明了location的来历:
查看源码:
}
父类中:
有一个属性 并且提供了set方法
}
6.2.2 Redirect类型
(1)、 说明
Redirect属于重定向。如果用redirect类型,则在reuqest作用域的值不能传递到前台。
redirectAction类型
(1)、说明
1、 把结果类型重新定向到action
2、 可以接受两种参数
a) actionName: action的名字
b) namespace:命空间
请求的路径
http://localhost:8080/project/csdn/csdn/delete.action?name=aa
Namespace=”csdn/csdn/”
<package name=”ss” namespace=”/csdn/csdn”>
<action=”delete”>
</package>
<package name=”test” namespace=”/csdn”>
<action=”delete”>
</package>
<package name=”sss” namespace=””>
<action=”delete”>
</package>
Action名称的搜索顺序
1、获得请求路径的URI,例如url是:http://server/struts2/path1/path2/path3/test.action
2.首先寻找namespace为/path1/path2/path3的package,如果存在这个package,则在这个package中寻找名字为test的action,如果不存在这个package则转步骤3;
3.寻找namespace为/path1/path2的package,如果存在这个package,则在这个package中寻找名字为test的action,如果不存在这个package,则转步骤4;
4.寻找namespace为/path1的package,如果存在这个package,则在这个package中寻找名字为test的action,如果仍然不存在这个package,就去默认的namaspace的package下面去找名字为test的action(默认的命名空间为空字符串"" ),如果还是找不到,页面提示找不到action。
Action原型 struts2
Prototype 原型 每次请求都会创建一个新的Action对象
Servlet
Singleton 原型 当第一次请求时,创建servlet对象 之后每次都使用该对象即可。
Servlet的生命周期
创建---init---service---destory
- struts2——02
- Struts2系列——struts2的result
- Struts2学习笔记——Struts2原理
- Struts2系列——struts2的result
- Struts2——(1)Struts2入门
- Struts2——(1)Struts2入门
- Struts2系列——struts2的result
- Struts2——(1)Struts2入门
- 深入详解Struts2——Struts2初识
- struts2——整合spring与struts2
- 【Struts2基础】——Struts1 & Struts2 区别
- Struts2——Struts2框架概述
- Struts2学习笔记——Struts2概览
- 【Struts2】——搭建Struts2开发环境
- struts2学习(三)—struts2域对象
- Struts2学习笔记——02
- struts2学习02——配置文件
- 周报——struts2
- flash幻灯,参数设置
- Struts2概述学习
- 贝叶斯网数据集
- c# cpu占用率和内存使用率
- [Python]itertools模块
- struts2——02
- 设计模式之--工厂模式
- 【分享】一位技术人员成长历程
- 现在如何在你的站点上使用HTML 5
- oracle新装之后必须做的
- 杭电OJ题 1002 A + B Problem II 解题报告
- Qt文件与目录操作
- Struts2+hibernate实现用户登录和增删改查案例
- 程序三种与数据库打交道的方式性能及安全性比较