반응형

이클립스를 작업표시줄에 고정하고 싶은데 작업 표시줄에 고정이라는 메뉴가 나타나지 않을때가 있습니다.

이러한 경우

eclipse.ini

파일에 두줄정도 추가해주면 됩니다.

 

1. 작업 표시줄 고정 없음

위 캡처처럼 우클릭을 하여도 작업표시줄에 고정이라는 메뉴가 없습니다.

메뉴를 생성하는 방법입니다.

 

2. eclipse.ini

eclipse.ini 파일을 열어줍니다.

텍스트 에디트를 사용중이라면 텍스트 에디트에 띄우고

그렇지 않다면 우클릭 후 연결 프로그램에서 메모장으로 띄워줍니다.

3. eclipse.ini

이런식으로 코드가 나올텐데요.

이전에 자신의 jdk bin 경로까지 복사합니다.

그후 .ini 파일에 밑에처럼 붙여넣습니다.


-vm
C:/eGovFrame/jdk1.6.0_25/bin

 

4.eclipse.ini

위 처럼 붙여놓고 이클립스를 실행시켜줍니다.

이클립스가 켜져있다면 종료 후 실행시켜줍니다.

5. 고정 메뉴 추가

이클립스를 재 실행 시켰다면 작업표시줄에 있는 이클립스 아이콘을 우클릭 한다면 작업 표시줄에 고정이라는 메뉴가 추가된걸 보실 수 있습니다 :)

 

즐거운 개발 하시길 바랍니다. :Db

 

 

반응형
반응형

MyBatis trim기능을 활용하여 sql 오류를 줄여봅시다.

SELECT COLUMN1
     , COLUMN2
     , COLUMN3
  FROM TABLE
 WHERE PK_COLUMN1 = #{key1}
   AND (
        
        PK_COLUMN2 = #{orKey1}
        
        
        OR PK_COLUMN3 = #{orKey2}
        
   )

이라는 코드가 존재할때

orKeys1, orKeys2의 값이 없다면 오류가 발생할겁니다.

SELECT COLUMN1
     , COLUMN2
     , COLUMN3
  FROM TABLE
 WHERE PK_COLUMN1 = #{key1}
   AND (
   )

이를 방지하고자 MyBatis에서는 trim을 사용하여 동적으로 SQL을 구현할 수 있도록 하였습니다.

SELECT COLUMN1
     , COLUMN2
     , COLUMN3
  FROM TABLE
 WHERE PK_COLUMN1 = #{key1}
   
        
        OR PK_COLUMN2 = #{orKey1}
        
        
        OR PK_COLUMN3 = #{orKey2}
        

<trim prefix="AND (" prefixOverrides="OR" suffix=")">

<trim></trim> 안에 쿼리가 존재한다면 AND(  와  ) 가 자동으로 만들어지게됩니다.

 

prefixOverrides="OR"은 맨앞에 OR연산자가 존재한다면 OR 연산자를 지워버리게 됩니다.

 

orKeys2의 값만 들어왔을경우

OR PK_COLUMN3 = #{orKeys2} 가 되는게 아니라 맨 앞 OR 연산자를 없애버리므로

PK_COLUMN3 = #{orKeys2}가 됩니다.

 

반대로 끝의 문자열을 지우고 싶다면

suffixOverrides을 사용하면 됩니다.

주로 UPDATE문에 사용되는데요

UPDATE [TABLE]                                |* ==> *|    UPDATE [TABLE]
   SET                                        |* ==> *|       SET
   COLUMN1 = #{data1},  |* ==> *|       COLUMN1 = #{data1},
   COLUMN2 = #{data2},  |* ==> *|       COLUMN2 = #{data2},
   COLUMN3 = #{data3},  |* ==> *|       COLUMN3 = #{data3},
   COLUMN4 = #{data4},  |* ==> *|       COLUMN4 = #{data4},
 WHERE PK_COLUMN = #{pkKey}                   |* ==> *|     WHERE PK_COLUMN = #{pkKey}

<if>를 통해 입력된값만 update를 하고 싶은데 마지막 쉼표(,) 때문에 오류가 나게됩니다.

이처럼 마지막 쉼표(,)를 제거하기 위해서 suffixOverrides를 사용하게됩니다.

UPDATE [TABLE]                                |* ==> *|    UPDATE [TABLE]
       |* ==> *|       SET
   COLUMN1 = #{data1},  |* ==> *|       COLUMN1 = #{data1},
   COLUMN2 = #{data2},  |* ==> *|       COLUMN2 = #{data2},
   COLUMN3 = #{data3},  |* ==> *|       COLUMN3 = #{data3},
   COLUMN4 = #{data4},  |* ==> *|       COLUMN4 = #{data4}       /* 쉼표(,)가 없어집니다. */
 WHERE PK_COLUMN = #{pkKey}                   |* ==> *|     WHERE PK_COLUMN = #{pkKey}

 

 

제 글이 코딩하는데 도움이 되면 좋겠습니다 :)

저도 잘 모르지만 제가 아는 만큼 써보려고 합니다 ㅎㅎ

이상 MyBatis trim 사용법이였습니다.

반응형

'IT > spring' 카테고리의 다른 글

이클립스 작업표시줄에 고정시키는 방법  (0) 2019.08.16

+ Recent posts