반응형
ArrayList와 HashMap을 한번에(합쳐서?) 사용하기.

ArrayList<HashMap<String, String>>

형태로 ArrayList를 만들어서 사용하면 된다.


사용 예제>
DB에 저장된 두개의 컬럼을 각각 다른 키값을 갖는 HashMap을 만들어 사용하고 싶다.
사용시 두 해시맵을 동시에 불러오고 싶다(?)

DB에서 값 가져오기.

<시작>
 
public ArrayList<HashMap<String, String>> getlist(){
ArrayList<HashMap<String, String>> list = new ArrayList<HashMap<String, String>>();
//하나로 만들 arraylist 선언
try{
conn = getConnection();//커넥션을 불러오는 사용자 함수.
Statement stmt = conn.createStatement();
rs = stmt.executeQuery("SELECT CODE, NAME FROM TEST ORDER BY CODE");
//data를 가져와서.
while(rs.next()){
HashMap<String,String> sidmap = new HashMap<String,String>();
//그때그때 해시맵을 선언해 주어야 함.(키 값이 계속 동일 함으로)
sidmap.put("code", rs.getString("CODE"));
sidmap.put("name", rs.getString("NAME"));
//두개의 키 두개의 값
list.add(sidmap);//리스트에 추가.
}
return list;
}
catch(Exception e){
e.printStackTrace();
}
finally{
disConnection();//커넥션 종료하는 사용자 함수.
}
return null;
}
<끝>


DB에서 가져온 리스트를 사용 할때.

<시작>
 
 
 
 
 
 
 
 
 
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page language="java" import="java.util.*" %><!-- Arraylist와 hashmap을 쓰기위해 -->
<jsp:useBean id="getlist" class="test.list" scope="page" /><!-- 디비에서 값 가져오는 클래스 -->
<%
ArrayList<HashMap<String, String>> list = new ArrayList<HashMap<String, String>>();
list = getlist.getlist();
%>
<body>
<table>
<tr>
<td class="mx_td">
<select name="s_id"> <%
for(int i=0; i<list.size(); i++) {%>
<option value="<%=list.get(i).get("code")%>"><%=list.get(i).get("name")%></option>
<%} %>
</select>
</td>
</tr>
</table>
</body>
<끝>


결과



 

반응형

'공부거리 > JSP' 카테고리의 다른 글

배열 리스트 사용법..?  (0) 2012.10.31
달력 만들기  (0) 2012.09.27
text 파일 작성하기  (0) 2012.09.10
JAVA 코드 분석 툴(잠재적 위험도 등)  (0) 2012.08.25
java 형변환 모음  (0) 2012.01.10
반응형
java.util.Date thisDate = new java.util.Date();
java.util.Date yesterday = new java.util.Date ( );

SimpleDateFormat dateFormatTime = new SimpleDateFormat("yyyyMMddHH24mmss");
String nowDateTime = dateFormatTime.format(thisDate);//현재시간
   
yesterday.setTime ( thisDate.getTime() - ( (long) 1000 * 3600 * 24 ) );//전부 초로 바꿔서 변경
yesterDate = dateFormatTime.format(yesterday);//하루전 시간



반응형

+ Recent posts