Language 149

[Ibatis] Like 검색

Ibatis 에서 Like 검색을 하기 위해서는다음과 같이 사용하면 된다. SELECT * FROM SA_OUTGOINGMSGLOG WHERE MSGID LIKE '%${msgid}%' ]]> 여기서 변수명을 #로 둘러싸는 것과 $로 둘러싸는것의 차이점을 알 필요가 있다. #의 경우에는 Prepare Statement로 등록이 된다. 디버그를 찍어봐도 ?로 치환된 이후 값이 대입된다. 하지만 $의 경우 바로 값이 치환된다. 특정 변수가 바로 DB에 입력되므로 보안에 좀더 신경을 써야 할것으로 생각된다.

Language/Java 2013.06.11

[Ibatis] There is no getter for property named 'msgid' in 'class java.lang.String'

ibatis 에서 select 시에 다음과 같이 error가 발생하는 경우 There is no getter for property named 'msgid' in 'class java.lang.String' SELECT * FROM SA_OUTGOINGMSGLOG WHERE MSGID LIKE '%${msgid}%' ]]> like 문에 '%${msgid}% 이 없으면, 이상없이 잘 실행된다는거. 이유는if문에서 name을 가져오는 방식이 parameterType 안에 들어있는 클래스에서getter 메소드로 name을 받아오기 때문이다. 즉, 에러 그대로 String 객체에 name을 뱉어주는 getter 메소드가 없기 때문이다.Integer를 넘기거나 Long을 넘긴 사람이라면 다들 안됐을 것이다. 이..

Language/NoSQL&JDBC 2013.06.11

[Maven] Nexus maven deploy 시 Error code 400 Bad Request...

maven compile 중 pom에 xxxx 를 사용하여 deploy를 하는경우 다음과 같은 error를 발생한다. ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.5:deploy (default-deploy) on project daemon: Failed to deploy artifacts: Could not transfer artifact com.sds.ump:daemon:jar:2.0.4 from/to release (http://localhost:8081/nexus/content/repositories/releases/): Failed to transfer http://localhost:8081/nexus/..

Language/Java 2013.04.18

Log4j 설정 (file vs xml)

Java Program에서 System.out.println("").. 외에 자주 사용하는것이 log4J 이다 실행해주는 luncher의 특성에 따라서 xml형태의 log4j를 load 못하는 형태가 있다.이때 jar 에 정의된 log4j는 따로 log를 남기기 어렵다이때 다음과 같이 file 형태로 log4j를 설정하면 application과 달리 log남기는것이 가능하다 xml형태의 log4j를 file형태로 변환 한 예이다. DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> import java.io.IOException; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFac..

Language/Java 2013.03.28

MSSQL COLLATE 변경

MSSQL 의 경우 default db set은 Korean_Wansung_CI_AS 으로 설정된다 DB의 character set을 변경 한 경우, 기존 table의 value와 비교 할때 다음과 같은 에러가 발생한다. equal to 작업에서의 "Korean_Wansung_CI_AS"과(와) "Korean_Wansung_CS_AS" 간의 데이터 정렬 충돌을 해결할 수 없습니다. 이 경우는 DB table의 character Set 을 Korean_Wansung_CS_AS 로 변경 한 것입니다. 참고로 ) 두 캐릭터셋의 차이는 다음과 같습니다. - Korean_Wansung_CI_AS 일반문자와 특수문자가 구분되지 않는다. - Korean_Wansung_CS_AS 일반 문자와 특수문자의 구별이 가능하다..

Language/NoSQL&JDBC 2013.03.27

JDBC SELECT COUNT 방법

JDBC를 이용해서 DB에 접근하는 경우select 된 rowCount를 찾는 방법 String selectQuery = "SELECT COUNT(*) FROM AAATABLE WHERE REFCOUNT='0' "; Connection dbConnection = null; Statement statement = null; int resultCount = 0; ResultSet rs = null; try { rs = statement.executeQuery(selectQuery); if(rs.next()) { resultCount = rs.getInt(1); } } 위와 같이 하면 Select 된 count 값을 알수 있다. 다른 방법도 있다.Statement s = conn.createStatement(..

Language/Java 2013.03.14

ant build

android ant build 를 위해서 ant 를 설치하고android adk를 설치하고android sdk를 설치 path 추가 android-sdks/tools/ android 실행시켜서 compile할 android 의 target sdk platform download 다음 android update project -p ./ 실행하면 build.xml 이 생성된다. > ant release 를 실행하면 build 성공 여부를 알수 있다.이때 생성되는 apk는 unsigned 형태로 signed apk를 생성하려면 ant.properties 를 추가함key.store= (/keystore 경로/)xxx.keystore key.alias= application ID key.store.passwor..

Language/Android 2013.02.14