본문 바로가기

Java

(9)
Mybatis null 체크와 문자열 비교 Mybatis에서 null체크하는 법과 문자열 비교하는 법에 대해서 정리한다. 1. Mybatis Null 체크 공백 체크 SELECT ID, NAME FROM MEMBER WHERE ID = #{id} AND NAME = #{name} 2. Mybatis 문자열 비교 SELECT ID, NAME FROM MEMBER WHERE 1=1 AND status = #{delYn} AND STATUS = #{status}
Maven 라이브러리 export 하기 이클립스에서 pom.xml에 정의한 라이브러리를 export하는 방법 Run As - Maven build.. Goals : dependency:copy-dependencies 입력 1. 프로젝트 우클릭 - Run As - Maven build.. 2. Goals : dependency:copy-dependencies 입력 3. 해당 디렉토리 찾아가면 라이브러리들이 export 되어있다.
[Java] SFTP 파일 업로드, 다운로드 예제 (jsch) 이전에 K사와 sftp 송수신으로 가맹점정보 파일을 다운로드, 결제정보를 업로드하여 파일처리하는 업무를 하며 개발했던 소스를 포스팅한당.. 앞서 jsch 라이브러리를 사용하면 쉽게 SFTP 서버 접속, 파일 업로드, 다운로드 목록등을 구현 할 수 있습니다. ** maven repository https://mvnrepository.com/artifact/com.jcraft/jsch ** jsch 홈페이지 http://www.jcraft.com/ ** jsch api 문서 https://epaul.github.io/jsch-documentation/javadoc/ SFTP 예제 소스 예제소스 첨부파일로 추가해놓았으니 다운받아 써보세요^^ 1. 라이브러리 추가 com.jcraft jsch 0.1.55 2. ..
[Java] 평일 날짜 수(근무일) 계산 공휴일테이블을 이용하였으며 시작, 종료날짜 사이에 주말, 공휴일 제외한 평일(근무일) 날짜수를 계산하는 소스입니다. import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; import java.util.HashMap; import java.util.List; public void calculateHoliday() { int workDt = 0; String startDate = "2020-01-23".replaceAll("-","");//2020-01-23 (목) String endDate = "2020-01-28".replaceAll("-", "");//2020-01-28 (화) //실제 공휴일을 ..
[Java] SHA-256 암호화 예제 단방향 알고리즘(One-Way) - 해쉬(Hash) 알고리즘 - 단방향 암호화는 평문을 암호화 했을 때 다시 평문으로(복호화) 되돌릴 수 없는 암호화 SHA-256 암호화 예제입니다. public class Test { //sha256 암호화 public static String sha256(String msg) throws Exception { MessageDigest md = MessageDigest.getInstance("SHA-256"); md.update(msg.getBytes()); StringBuilder builder = new StringBuilder(); for (byte b: md.digest()) { builder.append(String.format("%02x", b)); } re..
[Mybatis] mapUnderscoreToCamelCase 설정 mybatis 카멜케이스 적용하기. mybatis를 이용하여 VO에 리턴값을 받을때 카멜케이스를 적용하고 싶다면 마이바티스 설정파일(ex: sql-mapper-config.xml)에서 아래와 같이 작성해주면 된다. 데이터베이스 컬럼명 형태가 VACC_NO 일 경우 CamelCase형태를 적용시키면 vaccNo로 자동 매핑된다. VO사용시 해당 변수명에 맞게 매핑이 된다. 전자정부프레임워크에서 resultType을 egovMap으로 사용할경우 jsp단에서는 ${result.vaccNo} 이런형식으로 바로 쓸수 있다. 디폴트는 false로 적용되어있다. http://www.mybatis.org/mybatis-3/ko/configuration.html
[Java] java.security.InvalidKeyException: Illegal key size 해결 방안(자바 암호화 모듈 JEC) JDK 8u161 이전 버전을 사용중이라면 AES-256 암호화 작업중에 다음 예외가 발생할 것이다. java.security.InvalidKeyException: Illegal key size or default parameters 이전 버전의 JDK를 사용시, 1) https://www.oracle.com/index.html 메뉴에 검색 JCE라고 검색을 하면 JDK 버전별로 다운로드를 할 수 있다. 또는 2) https://www.oracle.com/java/technologies/downloads/archive/ Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 링크 클릭!! 자신의 JDK 버전에 맞게 다운..
[ibatis] 자바 프로시저 호출 *자바 프로시저 호출후 HashMap으로 다시 리턴받는 소스 -service.java //프로시저 호출 HashMap result = btob_sendDao.executeProc_cust_info(receivermobile, member_id); vo.setCust_no(result.get("ot_cust_no").toString()); //프로시저 호출 후 받은 값 set vo.setCr_id(result.get("ot_cr_id").toString()); //프로시저 호출 후 받은 값 set -dao.java public HashMap executeProc_cust_info(String phone_no, String login_id) throws SQLException { HashMap param =..
[Java] DB연동 txt파일 만들기 자바 텍스트파일 만들기 DB에서 select해서 전문형식 텍스트파일로 만들어준다. try { // 로그 시작 log.debug("-----------" + this.getClass().getName() + "--------------------"); SimpleDateFormat yearMonthFm = new SimpleDateFormat("yyyyMM"); Calendar cal = Calendar.getInstance(); cal.add(cal.MONTH,-1); //현재날짜기준 저번달을 구한다. String beforeDate = yearMonthFm.format(cal.getTime()); String filePath = "D://DT_SAP_"+beforeDate+".txt"; File f =..