上一篇为大家介绍了如何使用Action进行参数接收,以及简单的表单验证,本篇为大家介绍一下关于Action访问web元素的三种方式(request.session.application):模板包含(include):默认Action的使用. 下面我先来看一下Action如何访问web元素:1.Map方式进行数据传递:IOC(控制反转):2.Map方式进行数据传递:依赖Struts2:3.原始数据类型参数传递:IOC:4.原始数据类型进行参数传递:依赖Struts2,我们接下来一个一个的为大家介…
获取web资源的方式按是否与servlet耦合可分为两种,再细分按照依赖方式又有两种即 依赖容器 和  依赖注入 什么是依赖容器 就是依赖  ActionContext或者ServletActionContext容器获得web元素 什么是依赖注入 IoC(inverse of control)控制反转=dependence injection  依赖注入 是针对web元素(也叫web资源)如  request.session.application这三者的访问. 实现RequestAware.R…
我们上一节已经将action基本的配置和使用讲了,接下来我们讲以下struts一些小知识点: namespac: 上一节学习action的时候我们访问我们jsp文件时候使用的: http://localhost:8080/testStruts2/hello 这个路径,有同学就会问,为啥只能用这个路径, 其实我们也可以用: http://localhost:8080/testStruts2/hello.action 这两种是默认的方法,但是同样我们也可以自定义. <package name="…
一.Action中获取 第一种方式: 通过ActionContext,这种方式取到的对象是Map类型 import java.util.Map; import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; public class UserAction extends ActionSupport{ private String uid; public String logi…
众所周知,默认条件下,在浏览器输入indexAction!execute.action,便会执行indexAction类里的execute方法,这样虽然方便,但可能带来安全隐患,通过url可以执行Action中的任意方法.    想要禁止调用动态方法,则要在struts.xml中通过constant元素将属性strutsenableDynamicMethodInvocation设置为false,来禁止调用动态方法.             <constant name="strutsena…
众所周知,默认条件下,在浏览器输入indexAction!execute.action,便会执行indexAction类里的execute方法,这样虽然方便,但可能带来安全隐患,通过url可以执行Action中的任意方法.    想要禁止调用动态方法,则要在struts.xml中通过constant元素将属性strutsenableDynamicMethodInvocation设置为false,来禁止调用动态方法.             <constant name="strutsena…
访问web元素的四种方法(耦合,依赖注入).(耦合,非依赖注入).(非耦合,依赖注入).(非耦合,非依赖注入) 耦合:可以得到HttpServletResponse,HttpServletRequest,HttpSession等类型对象.能直接操作到真正的web元素. 非耦合:得到的是由struts封装好的Map类型,只能对范围进行存取值操作. 依赖注入:对象由struts2从外部注入.Action类不需要关心对象是如何得到的. 非依赖注入:对象由Action类自己提供初始化. 耦合 非依赖注入…
Struts2中访问web元素的四种方式如下: 通过ActionContext来访问Map类型的request.session.application对象. 通过实现RequestAware.SessionAware.ApplicationAware接口来访问Map类型的request.session.application对象(IoC方式). 通过ServletActionContext来访问Servlet API类型的HttpServletRequest. HttpSession. Serv…
1.通过RequestAware,SessionAware,ApplicationAware获取: 在Struts2中不能直接访问Request,Session,Application元素,但是可以使用Struts2中提供的RequestAware,SessionAware,ApplicationAware.在这里要分别为三个对象提供setter方法,以便让struts自动执行,使用IoC(控制反转)进行赋值. Action类继承RequestAware,SessionAware,Applica…
1.简单的数据校验 在action里面我们已经给出了一个数据校验: public String execute() { if(user.getUsername().equals("username")&&user.getPassword().equals("password")) { return SUCCESS; } return ERROR; } 这里是action的传送门 上面代码大概就是如果用户名为"username",并…