LinkedHashMap

2009. 6. 25. 11:35 from JSP
이거 다 아는거겠지만 또 자세히 물어보면 모르는사람도 많고 하니 20일만에 게시물 업데이트좀 합니다.

아주 가~끔 개발할때
벡터에 꼴랑 키와 값을 담아서 꺼내야 할 경우가 있습니다.

Vector v = new Vector();
String[] arr = null;
for( int i = 0; i < 10; i++ ){
  arr = new String[2];
  arr[0] = "key";
  arr[1] = "value";
  v.add(arr);
}
String[] result = (String[])v.get(0);
System.out.println(result[0]);

이렇게 사용하겠죠
사실 그냥 맵에서 키, 값 쭉~ 찍으면 되는데 찍어보시면 알겠지만 순서가 뒤죽박죽 입니다. List형과 Map형은 그 특성이 달라서 원래 순서를 기억하기 위해서는 리스트를 쓰는게 맞긴합니다.
하지만 LinkedHashMap은 Map중에서 특이하게 순서를 기억합니다.


해서 아래와 같은코드에 생성자를 LinkedHashMap을 사용하면 입력된 순서대로 출력되고
HashMap 이나 HashTable, HashSet 이런거 쓰면 뒤죽박죽으로 나옵니다.

    LinkedHashMap m = new LinkedHashMap();
//    HashMap m = new HashMap();
    for( int i = 0; i < 10; i++ ){
      m.put( String.valueOf(i), String.valueOf(i) );
    }
    Iterator i = m.keySet().iterator();
    String temp;
    while(i.hasNext()){
      temp = String.valueOf(i.next());
      System.out.println(m.get(temp));
    }

물론 LinkedHashMap은 리스트처럼 순서를 저장하므로 성능은 다른 맵에 비해서 떨어질 수 있습니다.
얼마 차이는 안나요.
Posted by 윤재현 :


SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  //date포맷 생성

query = " INSERT INTO TBLTIME ( TIMETEST ) VALUES ( ? ) ";
pstmt = conn.prepareStatement(query);
pstmt.setTimestamp(1 , new Timestamp( sdf.parse("2009-06-01 19:02:33").getTime() )); //TimeStamp 생성 & set
pstmt.executeUpdate();

ORACLE, MSSQL, MYSQL 확인완료;
DB마다 상이한 내장함수를 사용할 필요가 없음;
(ex. TO_DATE() )


psmt.setDate()는 날짜까지만 입력이 되는데... 
원래그런건지... 그이유는..잘.; 
Posted by 알 수 없는 사용자 :

1. parent일경우

var $ = window.parent.$;

$("#name").val("우왕ㅋ굳ㅋ");

alert($("#name").val());

 

결과는 부모도큐먼트의 name객체의 value를 반환

"우왕ㅋ굳ㅋ"

출력

  

2. opener일 경우

$("#name", opener.document ).val("우왕ㅋ굳ㅋ");

alert($("#name").val());

 

opener, parent 일경우가 서로 다르다...

왜그럴까??;;

 

Posted by 알 수 없는 사용자 :