向值栈保存数据&在JSP中获取值栈的数据

向值栈保存数据(root)

ValueStack vs=ActionContext.getContext().getValueStack();
push(Object obj)//底层就是 root.add(0,obj) 将数据存储到栈顶。
set(String name,Object obj);
/*底层是将数据封装到HashMap中,在将这个HashMap通过push存储。*/

在JSP中获取值栈的数据

Action如果想传递数据给 JSP,只有将数据保存到成员变量,并且提供get方法就可以了
root

1.fieldError   校验数据错误信息提示
2.actionError 关于逻辑操作时错误信息(例如登录失败)
3.message 就是一个信息.

    this.addFieldError("msg", "字段错误信息");
    this.addActionError("Action全局错误信息");
    this.addActionMessage("Action的消息信息");

    fieldError 针对某一个字段错误信息 (常用于表单校验)、
    actionError (普通错误信息,不针对某一个字段 登陆失败)、
    actionMessage 通用消息 

    在jsp中使用 struts2提供标签 显示消息信息
        
        
        
1.如果栈顶是一个Map集合,获取时,可以直接通过Map集合的key来获取value.
            property  value="username"/>

2.如果栈顶数据不是一个Map,没有key值,可以使用序号来获取。
            property value="[0]">  从0的位置向下查找所有。

            property value="[0].top"> 只查找0位置上数据。

OgnlContext

1.request数据    存:request.setAttribute() 
2.session数据    存:session.setAttribute()
3.application数据  存:application.setAttribute()
4.attr   依次从request,session.application中查找
5.parameters 获取请求参数

你可能感兴趣的:(Struts2)