|
|
|
|
@ -20,7 +20,7 @@ public class MakePreregistrInfo {
|
|
|
|
|
private static String[] g_strDB = new String[4];
|
|
|
|
|
|
|
|
|
|
public static final Logger logger = Logger.getLogger(MakePreregistrInfo .class);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public static void main(String[] args) {
|
|
|
|
|
try {
|
|
|
|
|
@ -42,7 +42,7 @@ public class MakePreregistrInfo {
|
|
|
|
|
g_strDB[1] = props.getProperty("db_connect");
|
|
|
|
|
g_strDB[2] = props.getProperty("db_id");
|
|
|
|
|
g_strDB[3] = props.getProperty("db_pw");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 콘솔 출력
|
|
|
|
|
MakePreregistrInfo.logger.info(String.format("=== DB접속정보 : %s, %s, %s", g_strDB[1], g_strDB[2], g_strDB[3]));
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
@ -51,29 +51,29 @@ public class MakePreregistrInfo {
|
|
|
|
|
|
|
|
|
|
MakePreregistrInfo obj = new MakePreregistrInfo();
|
|
|
|
|
try {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if(args.length != 3) {
|
|
|
|
|
System.err.println("총 3개의 args를 입력하지 않았습니다.");
|
|
|
|
|
System.err.println("sFileDir, sFileName");
|
|
|
|
|
System.exit(0);
|
|
|
|
|
System.exit(0);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
double d = 0.0;
|
|
|
|
|
d = obj.runMakeScarMstBin(Long.parseLong(args[0]), Long.parseLong(args[1]), args[2]);
|
|
|
|
|
MakePreregistrInfo.logger.info("=== 파일 생성 소요시간 : " + d);
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
System.exit(0);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//
|
|
|
|
|
//
|
|
|
|
|
private Connection getOrclConn( ) throws Exception{
|
|
|
|
|
Class.forName(g_strDB[0]);
|
|
|
|
|
return DriverManager.getConnection(g_strDB[1], g_strDB[2], g_strDB[3]);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private double runMakeScarMstBin(long nStart, long nEnd, String strWorkDate) throws Exception {
|
|
|
|
|
long start = System.currentTimeMillis(); // 작동 시간 측정용
|
|
|
|
|
|
|
|
|
|
@ -84,8 +84,8 @@ public class MakePreregistrInfo {
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
conn = (Connection) getOrclConn(); // Connection 생성 시 Connection으로 형변환
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CallableStatement cs = conn.prepareCall("call SP_ADVREDUCE_CHK(?,?)");
|
|
|
|
|
// 입력 파라메터
|
|
|
|
|
cs.setString(1, strWorkDate);
|
|
|
|
|
@ -93,11 +93,11 @@ public class MakePreregistrInfo {
|
|
|
|
|
cs.registerOutParameter(2, TbTypes.NUMERIC);
|
|
|
|
|
// 실행
|
|
|
|
|
cs.execute();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int out_ret = cs.getInt(2);
|
|
|
|
|
System.out.println("======== " + out_ret);
|
|
|
|
|
cs.close();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if(out_ret != 1 ) {
|
|
|
|
|
logger.debug("===== SP_ADVREDUCE_CHK 오류 : " + out_ret);
|
|
|
|
|
long end = System.currentTimeMillis(); // 작동시간 측정용
|
|
|
|
|
@ -107,10 +107,10 @@ public class MakePreregistrInfo {
|
|
|
|
|
ps = (PreparedStatement) conn.prepareStatement(sql);
|
|
|
|
|
ps.executeUpdate();
|
|
|
|
|
ps.close();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return (end - start) / 1000.0; // insertBatchFileToDB 실행에 걸린 시간
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// prepareStatement를 PreparedStatement으로 형변환
|
|
|
|
|
StringBuffer strSQL = new StringBuffer();
|
|
|
|
|
strSQL.append(" SELECT /*+ index_desc(A IDX_SRCH_PRP_MST) */") ;
|
|
|
|
|
@ -118,17 +118,17 @@ public class MakePreregistrInfo {
|
|
|
|
|
strSQL.append(" FROM TB_CFS_PRP_INFO_MST A") ;
|
|
|
|
|
strSQL.append(" WHERE SECSN_YN ='N'") ;
|
|
|
|
|
strSQL.append(" ORDER BY PRP_INFO_SEQ") ;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
logger.info(strSQL.toString());
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Statement stmt = conn.createStatement(java.sql.ResultSet.TYPE_FORWARD_ONLY,java.sql.ResultSet.CONCUR_READ_ONLY);
|
|
|
|
|
stmt.setFetchSize(10000);
|
|
|
|
|
stmt.setFetchSize(10000);
|
|
|
|
|
rs = stmt.executeQuery( strSQL.toString() );
|
|
|
|
|
|
|
|
|
|
String str = "";
|
|
|
|
|
int n = 0;
|
|
|
|
|
File file = new File("/gpta/source-app/cfs/relay_jar/data/ADVMST");
|
|
|
|
|
FileOutputStream fos = new FileOutputStream(file);
|
|
|
|
|
FileOutputStream fos = new FileOutputStream(file);
|
|
|
|
|
while (rs.next()) {
|
|
|
|
|
n++;
|
|
|
|
|
if(n % 10000 == 0) {
|
|
|
|
|
@ -137,8 +137,8 @@ public class MakePreregistrInfo {
|
|
|
|
|
|
|
|
|
|
str = String.format("%s%s%s%s", rs.getString(1), rs.getString(2), rs.getString(3), rs.getString(4));
|
|
|
|
|
fos.write(str.getBytes());
|
|
|
|
|
} // end while
|
|
|
|
|
|
|
|
|
|
} // end while
|
|
|
|
|
|
|
|
|
|
fos.close();
|
|
|
|
|
|
|
|
|
|
logger.info(strSQL.toString());
|
|
|
|
|
@ -149,12 +149,12 @@ public class MakePreregistrInfo {
|
|
|
|
|
|
|
|
|
|
return (end - start) / 1000.0; // insertBatchFileToDB 실행에 걸린 시간
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
String sql = "update TB_CFS_MST_FLAG set PRP_FLAG = '1', PRP_SENDTIME = SYSDATE, PRP_CHG_TIME = SYSDATE ";
|
|
|
|
|
ps = (PreparedStatement) conn.prepareStatement(sql);
|
|
|
|
|
ps.executeUpdate();
|
|
|
|
|
conn.commit();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}catch(Exception e){
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}finally{
|
|
|
|
|
@ -162,7 +162,7 @@ public class MakePreregistrInfo {
|
|
|
|
|
rs.close();
|
|
|
|
|
if(ps != null)
|
|
|
|
|
ps.close();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
conn.close();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ -172,13 +172,13 @@ public class MakePreregistrInfo {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private int setFtpData(File file, String fileNm) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
FTPUtil sftp = new FTPUtil();
|
|
|
|
|
|
|
|
|
|
logger.debug("======== 업로드 시작 : " + fileNm);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
sftp.init("175.193.201.56", "tmax","tmax1234");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Map<String, String> map = new HashMap<String, String>();
|
|
|
|
|
map.put("return", "0");
|
|
|
|
|
|
|
|
|
|
@ -187,15 +187,15 @@ public class MakePreregistrInfo {
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
logger.debug("======== : " + map.get("return"));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int nReturn = Integer.parseInt(map.get("return"));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
sftp.disconnect();
|
|
|
|
|
|
|
|
|
|
logger.debug("======== 업로드 끝 : " + nReturn);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return nReturn;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|