PreparedStatement 로 사용할 쿼리 쉽게 만드는 방법
- 쿼리문을 만들어 줄 Class
package org.bnk.util;
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.Scanner;
public class QueryUtil {
public void makeQuery()throws Exception{
InputStream in = new FileInputStream("query.txt");
Scanner scanner = new Scanner(in);
while(true){
try{
String str = scanner.nextLine();
System.out.println("buffer.append(\" "+ str+"\\n\");");
}catch(Exception e){
break;
}
}
in.close();
}
public static void main(String[] args)throws Exception {
new QueryUtil().makeQuery();
}
}
- query.txt 파일을 프로젝트 밑에 만들고 거기 안에다가 쿼리 문을 넣는다.
그리고 실행하면 PreparedStatement 에서 사용할 쿼리가 만들어 진다.
INSERT into TBL_BBS (bbsno, title, content, writer)
values(SEQ_BBS.NEXTVAL, 'AAAAAAAAA', 'BBBBBBBB', 'CCCCCC');
위 문장이 텍스트 파일에 있었다면
실행을 하고 만들어지는 문장은
buffer.append(" INSERT into TBL_BBS (bbsno, title, content, writer)\n");
buffer.append(" values(SEQ_BBS.NEXTVAL, 'AAAAAAAAA', 'BBBBBBBB', 'YNK')\n");
이렇게 많들어 진다.
이걸 PreparedStatement 에서 사용할 문자로 바꾸면 이렇게 된다.
buffer.append(" INSERT into TBL_BBS (bbsno, title, content, writer) \n");
buffer.append(" values(SEQ_BBS.NEXTVAL, ?, ?, ?) \n");