list 객체 그룹
/**
*
*/
package suntest;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
/**
* @author zhang
*
*/
public class Test {
/**
* @param args
*/
public static void main(String[] args)
{
List<User> users = new ArrayList<User>();
User user1 = new User();
user1.setName("grace");
user1.setFaMember("father");
user1.setFaMemberAge("50");
user1.setFaMemberWork("worker");
User user2 = new User();
user2.setName("grace");
user2.setFaMember("mother");
user2.setFaMemberAge("45");
user2.setFaMemberWork("worker");
User user3 = new User();
user3.setName("lily");
user3.setFaMember("mother");
user3.setFaMemberAge("60");
user3.setFaMemberWork("teacher");
User user4 = new User();
user4.setName("candy");
user4.setFaMember("father");
user4.setFaMemberAge("60");
user4.setFaMemberWork("housewife");
users.add(user1);
users.add(user2);
users.add(user3);
users.add(user4);
//
Map<String,List<User>> mapList = new HashMap<String,List<User>>();
Map<String,User> mapObject = new HashMap<String,User>();
// 1
for(Iterator it = users.iterator();it.hasNext();)
{
User user = (User)it.next();
if(mapList.containsKey(user.getName()))
{ // ,
List<User> userList = mapList.get(user.getName());
userList.add(user);
}else
{
List<User> userList2 = new ArrayList<User>();
// list
userList2.add(user);
mapList.put(user.getName(), userList2);
}
}
System.out.println(mapList);
// 2
//List<List<User>> list = new ArrayList<List<User>>();
for(Map.Entry<String, List<User>> m: mapList.entrySet())// Map
{
//Map newMapList = new HashMap(); //
//String key = m.getKey();
List<User> userSingle = new ArrayList<User>();
userSingle = m.getValue();
System.out.println(userSingle);
//list.add(userSingle);
}
}
public static class User
{
private String name;
private String faMember;
private String faMemberAge;
private String faMemberWork;
public String getFaMember()
{
return faMember;
}
public void setFaMember(String faMember) {
this.faMember = faMember;
}
public String getFaMemberAge() {
return faMemberAge;
}
public void setFaMemberAge(String faMemberAge) {
this.faMemberAge = faMemberAge;
}
public String getFaMemberWork() {
return faMemberWork;
}
public void setFaMemberWork(String faMemberWork) {
this.faMemberWork = faMemberWork;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String toString()
{
StringBuffer str = new StringBuffer();
str.append(this.getName());
str.append(",");
str.append(this.getFaMember());
str.append(",");
str.append(this.getFaMemberAge());
str.append(",");
str.append(this.getFaMemberWork());
return str.toString();
}
}
}
오늘 한 네티즌이 저에게 이런 질문을 했습니다. 그는 맵으로 데이터층이 되돌아오는 데이터를 봉인하고 Jsp페이지에서 struts2 라벨을 통해 맵의 키 값을 표시하려고 했습니다. 사실 이전에 봉인된 데이터는 모두 List를 사용했습니다. 지금까지 맵으로 데이터를 봉인한 적이 없습니다. 가장 많은 것은 사용자의 로그인 정보를 저장하여 사용자가 로그인했는지 아닌지를 판단하는 데 사용했습니다. 그러나 맵으로 데이터를 봉인하는 것은 현명한 행동이 아닙니다.그러나 나도 이전에 이렇게 한 적이 없어서 인터넷에서 오랫동안 찾았지만 관련 정보를 찾지 못했다. 나중에 struts2는 액션의 속성 값을 직접 표시할 수 있다고 생각해서 다음과 같은 방식으로 이 문제를 해결했다. 구체적인 코드는 다음과 같다. 액션.
public String execute() throws Exception ...{
if(this.getUserName().equals("chen") && this.getPwd().equals("chen")) ...{
ActionContext.getContext().getSession().put("userName", this.getUserName());
User user = new User();
user.setName("a");
user.setCode("A");
map.put(1, user);
user = new User();
user.setName("b");
user.setCode("B");
map.put(2, user);
return SUCCESS;
}
return ERROR;
}다음은 jsp<%@taglib uri="/struts-tags"prefix="s"%>
|
기사가 네트워크 파이프라인에서 옮겨 싣기:http://www.bitscn.com/pdb/java/200806/143934.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
JSP| EL (Experession Language)텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.