Struts2 JSP中将list,set ,Map传递到Action然后遍历(三十五)

阅读更多
---------------List-----------------
1.使用Strut2的的集合对象:在jsp初始化action中的list然后提交到action

2.使用Struts标签,实现多个用户同时注册(注意属性配置文件)

3.pojo
package com.sh.pojo;

import java.util.Date;

public class Register {
private String name;
private String pwd;
private int age;
private Date birthday;
private String address;

//get set
}


4.action
package com.sh.action;

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

import com.opensymphony.xwork2.ActionSupport;
import com.sh.pojo.Register;

public class RegisterAction extends ActionSupport {

	private static final long serialVersionUID = 1L;
	private List registers;
	public List getRegisters() {
		return registers;
	}
	public void setRegisters(List registers) {
		this.registers = registers;
	}
	public String execute() throws Exception {
		return SUCCESS;
	}
	
}


5.RegisterAction-conversion.properties(配置action中list的泛型对象,放在action同一目录下,属性文件的命名为:actionName-version.properties)
Element_registers=com.sh.pojo.Register //Element_是固定的后面接action中的list集合变量名,后面是泛型中的对象类。


6.struts.xml



 
     
	
    
    
        
    	
			/success.jsp  
			/login.jsp     	
    	
    	
    	
    	
			/success1.jsp  
			/login3.jsp     	
    	
    	
    	
			/success3.jsp  
			/login3.jsp     	
    	
    	
    



7.login.jsp  使用 struts2标签 和 OGNL 表达式

	
		
  • 用户名
  • 密码
  • 年龄
  • 生日
  • 地址


8.success.jsp 循环遍历 list 集合

  
  • 用户名
  • 密码
  • 年龄
  • 生日
  • 地址


9.访问
--localhost:8080/Struts2_CollectConversion/login.jsp
填上信息后提交就可以看到成功页面的循环的输出

10.使用 jstl c 标签 和  EL 表达式 实现上面的 批量注册 (注意 数组初始化)
long1.jsp

	
  • 用户名
  • 密码
  • 年龄
  • 生日
  • 地址


11.访问

--localhost:8080/Struts2_CollectConversion/login1.jsp
填上信息后和上面的一样。


---------------Set----------------
12.使用Strutgs2的 Set 类型. 遍历所有 和 取其中一个
action
package com.sh.action;

import java.util.LinkedHashSet;
import java.util.Set;

import com.opensymphony.xwork2.ActionSupport;
import com.sh.pojo.Register;

public class RegisterSetAction extends ActionSupport {

	private Set registers=new LinkedHashSet();

	public Set getRegisters() {
		return registers;
	}

	public void setRegisters(Set registers) {
		this.registers = registers;
	}

	@Override
	public String execute() throws Exception {
		// TODO Auto-generated method stub
		return SUCCESS;
	}	
	
}



13.RegisterSetAction-conversion.properties
KeyProperty_registers=name  //KeyProperty 如果是取 单个 就需要这个
Element_registers=com.sh.pojo.Register 


14.login3.jsp  (注意 初始化 set 的时候 采用 makeNew[] )

	
		
  • 用户名
  • 密码
  • 年龄
  • 生日
  • 地址


15.success2.jsp 遍历 Set 和获取 单个

  
  • 用户名
  • 密码
  • 年龄
  • 生日
  • 地址
===========遍历所有的=========
===========单独去其中的一个(知道其中的key wei admin)========


16.访问
--http://localhost:8080/Struts2_CollectConversion/login3.jsp
填写信息后  就会到成功页面 看到遍历所有  和 取单个


---------------Map----------------

17.使用 Strut2的 Map 类型
action
package com.sh.action;

import java.util.HashMap;
import java.util.Map;

import com.opensymphony.xwork2.ActionSupport;
import com.sh.pojo.Register;

public class RegisterHashMapAction extends ActionSupport {

	private Map maps=new HashMap();

	public Map getMaps() {
		return maps;
	}

	public void setMaps(Map maps) {
		this.maps = maps;
	}

	@Override
	public String execute() throws Exception {
		// TODO Auto-generated method stub
		return SUCCESS;
	}
	
	
}



18.属性配置文件 RegisterHashMapAction-conversion.properties
Key_maps=java.lang.String   // Key_ 固定  后面为action的Map属性名
Element_maps=com.sh.pojo.Register


19.login5.jsp

	
		
  • 用户名
  • 密码
  • 年龄
  • 生日
  • 地址


20 .success3.jsp 遍历 Map  和   取 单个

  
  • 用户名
  • 密码
  • 年龄
  • 生日
  • 地址
===========遍历所有的=========
===========单独去其中的一个= (知道其中的key=0)========


21.访问
--http://localhost:8080/Struts2_CollectConversion/login5.jsp
填写信息就可以看到结果了

注意 action中 set 和hashmap 都要 初始化 和 有  get 和set 方法

  • Struts2_CollectConversion.zip (3.3 MB)
  • 下载次数: 154

你可能感兴趣的:(HashMap,set,iterator,conversion,集合的使用)