티스토리 뷰

Dev

ibatis-쿼리xml

jami 2007. 12. 5. 10:35

열기.

  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"
  3.     "http://ibatis.apache.org/dtd/sql-map-2.dtd">
  4.  
  5. <sqlMap namespace="Board">


select.

  1.     <!-- 게시판 테이블의 데이터를 얻는다. -->
  2.     <statement id="select_board_001_l" parameterClass="java.util.HashMap"

    resultClass="java.util.LinkedHashMap"><![CDATA[

    select seq,

           title,

           u_seq,

           rg_dts

      from $table_name$

     where rownum <= #rownum:NUMERIC:0#

        ]]></statement>

parameterClass 에 세팅된 HashMap 은 jsp등에서 넘겨진 파라미터를 담고 있는 객체.

resultClass 에 세팅된 LinkedHashMap 은 쿼리의 칼럼 순서대로 넣기 위해 사용하였다. java.util.Map 타입과 비슷한(set, get 있는) 객체를 사용해야 한다.

(하나의 row를 얻을 때는 xml 문자열 데이터를 얻을 수 있다.)

같은 이름의 식별자에 자동 세팅된다.

$식별자$ - 문자열 대체.

#식별자# - 해당 타입으로 대체. ex) #rownum:NUMERIC:0# - rownum은 숫자 타입이고, null 일 경우 0으로 대체된다.



insert.

  1.     <!-- 글을 등록한다. -->
  2.     <insert id="insert_board_001_p" parameterClass="java.util.HashMap"><![CDATA[
  3. insert into $table_name$
  4.     (
  5.     seq,
  6.     title,
  7.     u_seq,
  8.     rg_dts,
  9.     )
  10. select /*+ index_desc($table_name$ xpk$table_name$) */
  11.        nvl(seq, 0) + 1,
  12.        #title#,
  13.        (case when (#u_seq:NUMERIC:0# is null or #u_seq:NUMERIC:0# < 1) then nvl(seq, 0) + 1
  14.              else #u_seq:NUMERIC:0#
  15.          end),
  16.        to_char(sysdate, 'yyyymmddhh24miss')
  17.   from $table_name$
  18.  where rownum = 1
  19.     ]]></insert>

seq의 경우 시퀀스 또는 자동증가 칼럼을 이용해야 할 것임.



select where 조건 동적생성.

  1. //TODO


닫기.

  1. </sqlMap>

이 글은 스프링노트에서 작성되었습니다.

'Dev' 카테고리의 다른 글

FCKeditor  (0) 2008.04.03
[펌] oracle dbms utility 관련 구문  (0) 2008.03.13
[펌][html]마우스 스타일  (0) 2007.07.03
[펌][java]Creating ZIP and JAR Files  (0) 2007.07.02
LoggableStatement 를 이용한 sql 로깅  (0) 2007.06.18
댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함