struts入门day03

值栈

  (1)在struts2里面提供本身一种存储机制,类似域对象,是值栈,可以存值和取值。

    (2)在action中把数据放到值栈里面,在页面获取到值栈的数据。

servlet和action的区别:

  (1)servlet :在访问的时候创建,只创建一次,单实例对象。

   (2)   action  :访问时创建,每次访问action时候都会创建action对象,创建多次,多实例对象。

值栈存储位置

     (1)每次访问action时候都会创建action对象。

   (2)在每个action对象里都有一个值栈对象。

 

  第三种常用,节省空间。

    步骤:

      1.private String name;

      2.生成get方法

      3.然后在方法赋值  name="ada";

向值栈中存放list集合:

package cn.itcast.struts.bean;

import java.util.ArrayList;
import java.util.List;

import com.opensymphony.xwork2.ActionSupport;

import cn.itcast.struts.entity.User;

public class DateDemo2 extends ActionSupport{
  
    
    private List<User> list =new ArrayList();  //第一步
    
    public List<User> getList() {         //第二步
        return list;
    }


    @Override
    public String execute() throws Exception {
        
        User user = new User();              
        user.setUsername("lepooh");
        user.setPassword("123");
        user.setEmail("sin@qq.com");
        
        User user2 = new User();
        user2.setUsername("dadad");
        user2.setPassword("12adad3");
        user2.setEmail("aaaaaasin@qq.com");
        list.add(user);
        list.add(user2);
        
        return SUCCESS;
    }
    
    
    
}

 

 

值栈取出数据:<br/>
    1.获取字符串
    <s:property value="name"/>
    <br/>
    2.获取对象的值
    <s:property value="user.username"/>
    <br/>
    3.获取list集合第一种方法
    <s:property value="list[0].username"/>
    <br/>
    **********************************<br/>
    4.获取list集合第二种方法<br/>
    <s:iterator value="list">
        <s:property value="username"/>
        <s:property value="password"/>
        <s:property value="email"/>
        <br/>
    </s:iterator>
    <br/>
    **********************************<br/>
    5.获取list集合第三种方法<br/>
    <s:iterator value="list" var="user">
        <s:property value="#user.username"/>
        <s:property value="#user.password"/>
        <s:property value="#user.email"/>
        <br/>
    </s:iterator>

EL表达式为什么能取到值栈的值?

  首先在request中取,取不到再从值栈中取。

  filter增强了request。

posted on 2018-03-10 23:55  投笔从码  阅读(106)  评论(0)    收藏  举报

导航