'2018/07'에 해당되는 글 3건

  1. 2018.07.18 myBatis - 사용가능한 jdbcType
  2. 2018.07.17 eclipse단축키
  3. 2018.07.17 myBatis. Sql WHERE문에서 in 처리(2)

[ myBatis - 사용가능한 jdbcType ]

 

 


JdbcType  ARRAY 
JdbcType  BIGINT 
JdbcType  BINARY 
JdbcType  BIT 
JdbcType  BLOB 
JdbcType  BOOLEAN 
JdbcType  CHAR 
JdbcType  CLOB 
JdbcType  CURSOR 
JdbcType  DATALINK 
JdbcType  DATE 
JdbcType  DATETIMEOFFSET 
JdbcType  DECIMAL 
JdbcType  DISTINCT 
JdbcType  DOUBLE 
JdbcType  FLOAT 
JdbcType  INTEGER 
JdbcType  JAVA_OBJECT 
JdbcType  LONGNVARCHAR 
JdbcType  LONGVARBINARY 
JdbcType  LONGVARCHAR 
JdbcType  NCHAR 
JdbcType  NCLOB 
JdbcType  NULL 
JdbcType  NUMERIC 
JdbcType  NVARCHAR 
JdbcType  OTHER 
JdbcType  REAL 
JdbcType  REF 
JdbcType  ROWID 
JdbcType  SMALLINT 
JdbcType  SQLXML 
JdbcType  STRUCT 
JdbcType  TIME 
JdbcType  TIMESTAMP 
JdbcType  TINYINT 
JdbcType  UNDEFINED 
JdbcType  VARBINARY 
JdbcType  VARCHAR 

 

'Web. 기타 언어 > myBatis' 카테고리의 다른 글

myBatis-pk,sequence 생성  (0) 2019.07.11
myBatis. Sql WHERE문에서 in 처리(2)  (0) 2018.07.17
myBatis. Sql WHERE문에서 in 처리  (0) 2017.12.05
myBatis - isEmpty, isNull  (0) 2017.12.05
myBatis. if. case 문  (0) 2017.12.05
Posted by 농부지기
,

[ eclipse단축키 ]

 

1. ctrl + shift + R : 파일 찾기

2. crtl + shift + E : 열려진 파일목록 조회

3. crtl + shift + T : type 열기.  이 단축키로도 파일 찾기가능

 

4. ctrl + method명 클릭 : 클릭 method명에 대한 소스 찾아가기

    또는

    method명 위치 후 F3

4. crtl + method명 위에 마우스 이동 : 이동가능한 목록 이 조회 됨

    - Open Declaratino      : 정의된 Method명 이동

    - Open Implementation : 구현된 Method명 이동

    - Open Return Type                                       : 해당 Method의 return type에 대한 class를 open

    - Go to MyBatis definition of method_name    : sql문장을 직접찾아 가줌

                                                                            이 메뉴는 느낌이 모든 플젝에서 나오는게 아니고

                                                                                 현 플젝에서 TA가 추가한 느낌

    - Open <select/> in XML mapper                   : sql문장을 직접찾아 가줌

                                                                            이 메뉴는 느낌이 모든 플젝에서 나오는게 아니고

                                                                                 현 플젝에서 TA가 추가한 느낌

 

* Ctrl + shift + O : source > organize imports
            (자동으로 import절 정리. 3레벨 밑에 패키지들 다중 선택하면 한번에 이쁘게 import절 정리)
* Ctrl + shift + R  : open resource (좌측 프로젝트 뷰서 그만 찾자. 클래스명 조각으로 검색하자)
* Ctrl + shift + T  : open type (콘솔서 선택한 qualified name 패키지명 포함한 클래스도 검색된다.)
* Ctrl + shift + G :  References in Workspace (이 클래스/메서드를 쓰는 소스는 어떻게 되지? Caller)
* F3 : Open Declaration (Ctrl 클릭은 그만. 키보드로 이동)
* F12 : Activate Editor (묻지마 에디터 창으로 바로 포커스 이동)
* Ctrl + O : quick outline (휠스크롤은 그만. 원하는 메서드로 바로 이동)
* Find / Replace All 말고 우아하게 Refactor > Rename, Move
* Ctrl + . : 다음 에러나 경고 Next annotation
* Ctrl + , : 이전 에러나 경고 previous annotation
* Alt + -> : 다음
* Alt + <- : 이전               
* Ctrl + Q : 마지막 편집한 지점으로

* Ctrl + Shift + 위화살표, 또는 아래 화살표 : 현 소스에서 이전Method, 다음 Method로 이동


* 자세한 사항은 window > preferences > keys - 내 맘대로 설정 가능

 

 

Posted by 농부지기
,

[ myBatis. Sql WHERE문에서 in 처리(2) ]

 

1. 참고

    - myBatis 기능인  <foreach>를 사용할 경우 상당한 overhead가 발생한다.

   그렇다고 $(문장 그대로 대입)형으로 넘기면 차후에  sql injection에서 추출된다.

 

2. 방법1

  - REGEXP 함수사용하기

    REGEXP_SUBSTR()함수를 사용해서 콤마로 구분된 값을 취하고

    CONNECT BY 를 이용해서 문자열의 콤마갯수+1 만큼 LOOP를 돌아 레코드로 만든다.

  - cdList = "111,222,333,444"; 와 같이 넘긴다.

  - SQL

       

 

3. 방법2

    - DB FUNCTION  : 위 방법1의 SQL을  DB FUNCTION으로 만들어서 결과를 Record를 RETURN

    - 방법1보다 간단 하지만  아주 미세하게 속도는 느림 (고려할만한 수준의 속도 저하는 아님)

    - SQL

          

 

     - FUNCTION

      

 

 

4. 방법3

    1. 개발방법(설명)

       - IN 절에서 사용할 IN_테이블 하나 생성

       - java 단에서 in절에 적용될 code에 대해서 insert처리 한다.

       - IN_테이블을 이용해서  SQL문장 완성  

    2. 실 개발방법

       - (테이블)

          CREATE TABLE IN_TABLE

                     (  GUBN  VARCHAR2(20)    NOT NULL

                     ,  CODE   VARCAHR2(100) NOT NULL

                     )

       - (java)

          . 코드값이 : 111,222,333,444 와 같이 4개가 존재 시

          . IN_TABLE에  [GUBN='partCd'], [CODE='1111', CODE='2222', ... ] 와 같이 Insert한다.

       - (sql)

         

 

 

'Web. 기타 언어 > myBatis' 카테고리의 다른 글

myBatis-pk,sequence 생성  (0) 2019.07.11
myBatis - 사용가능한 jdbcType  (0) 2018.07.18
myBatis. Sql WHERE문에서 in 처리  (0) 2017.12.05
myBatis - isEmpty, isNull  (0) 2017.12.05
myBatis. if. case 문  (0) 2017.12.05
Posted by 농부지기
,