문서의 이전 판입니다!
PAN*** (수집기)내부 프로젝트 진행 중 수집 데이터 건마다 DB 커넥트를 해서 부하가 생김.
커넥트를 최대한 줄이기 위해 구현함.
// 수집한 데이터 조회 cllctVOs = dbUtil.getCllctSelectList(mode, sDate, eDate, runType); // 수집데이터 갯수 만큼 반복 for(RpCllctVO cllctVO: cllctVOs) { dbUtilCu.insertCllctCubridData(cllctVO); } public int insertCllctCubridData(RpCllctVO cllctVO) throws SQLException, UnsupportedEncodingException { DBManagerCu dbm = DBManagerCu.getInstanceCu(); Connection conn = dbm.getConnection(); PreparedStatement pstmt = null; int ret = 0; String sqlText; sqlText = " INSERT INTO TB_INSEQCMS_BBS_DATA " + " ( " + " BBS_ID " + " ,SEQ " + " ,등등 생략 " + " ) " + " VALUES " + " ( " + " 'news-media' " + " ,? " + " ,등등 생략 " + ") "; try { pstmt = conn.prepareStatement(sqlText); pstmt.setInt(1, cllctVO.getBitnaraSeq()); 등등 생략 ret = pstmt.executeUpdate(); } finally { dbm.freeConnection(conn, pstmt); } return ret; }
내용 인코딩이 UTF-8일 떄 제목 인코딩도 아래처럼 선언해야한다.
ex) message.setSubject(MimeUtility.encodeText(consultTitle, “UTF-8”, “B”));
'MimeUtility.encodeText()'를 사용하면 catch에 'UnsupportedEncodingException eME'도 선언해줘야한다.
ex) catch (MessagingException | UnsupportedEncodingException eME)
위 소스는 내부 프로젝트 3곳에서 검증이 되었습니다.
K * * (기관), 코 * * * * (기업), H * * * * (대학) 에 모두 적용된 것입니다.