본문 바로가기

분류 전체보기

Date 객체에 날짜 포맷 함수 추가 Java의 SimpleDateFormat 과 유사한 format 형태로 javascript의 Date 객체를 이용하도록 하는 예제. 출력 결과[Log] 2017-07-06 14:26:40 (localhost, line 39)[Log] 17-07-06 14:26:40 (localhost, line 40)[Log] 2017-07-06 오후 02:26:40 목요일 (localhost, line 41) 더보기
숫자 천단위(3자리) 마다 콤마 찍기 숫자형이나 문자형 숫자에 가독성을 높이기 위해 3자리 마다 콤마를 찍어주는 함수 예제이다. 출력 결과[Log] 1,111,111,111 (localhost, line 28)[Log] 2,222,222,222 (localhost, line 29) 이미 존재하는 Number 와 String 객체에 prototype 속성을 이용하여 comma 라는 함수를 추가해 놓고 문자나 숫자 뒤에 그냥 comma() 를 호출해서 사용하면 된다. 더보기
날짜 데이터 Injection - Example : DateProperty.javaimport java.util.Date; /** * Created on 2017. 7. 6. * * @author Sung-Hun Choi * @since JDK1.8 */ public class DateProperty { private Date date; public void setDate(Date date) { this.date = date; } public void printDate() { System.out.println(date); } } 위 클레스의 date 변수에 날짜 데이터를 넣도록 설정해보겠다. - Example : date-property.xml 위와 같이 스프링 설정을 해놓고 DateProperty 클레스의 pritDate() 메소드.. 더보기
util 스키마 사용 Bean 속성이나 생성자 인자를 List, Set 또는 Map의 다른 구현으로 대체하려는 경우가 있다.예를 들어 List 형식의 빈 속성에 ArrayList 대신에 LinkedList의 인스턴스를 할당하려는 경우가 있다. 이 경우 스프링 util 스키마의 , , 요소를 사용하는 것이 좋다. 이걸 사용하면 Bean의 List, Map, Set의 구현 클레스를 자신이 원하는 클레스로 지정할 수 있다. Example XML 11 22 11 22 11 22 더보기
JDK 1.7 이상에서 APNS 인증서 문제 IOS로 Push를 전송하기 위해 사용하는 서비스인 APNS는 JDK 1.7 버전 이상에서 인증서 문제가 발생한다. APNS 서버로 연동할 때 SSLHandshakeException이 발생하면 다음과 같이 해보자. 먼저 Apple에서 필요한 파일을 다운 받는다.인증서 : 확장자가 cer로 끝나는 파일Private Key : 확장자가 p12로 끝나는 파일그리고 openssl 명령어를 이용하므로 openssl 명령으로 실행시킬 환경도 준비가 되어야 할것이다. 총 3단계로 openssl 명령어를 실행하며 다음과 같이 진행한다. 인증서 => certification.cerPrivateKey => my_private_key.p12 $ openssl x509 -in certification.cer -inform D.. 더보기
Lombok 소개 먼저 이 글은 허니몬g(Honeymon)의 gitblog에서 그대로 옴겨왔습니다. 제가 작성한 글이 아니기 때문에 출처를 먼저 밝히며 문제가 있을 시 삭제하도록 하겠습니다. Lombok을 사용해봅시다.자바에서 DTO, VO, Domain Object 만들다보면, 멤버필드에 대한 Getter/Setter 메소드, Equals, hashCode, ToString과 멤버필드에 주입하는 생성자를 만드는 코드 등으로 불필요하게 코드가 길어지는 경우를 볼 수가 있다. 불필요하지만 생성해야 하는 코드들을 줄일 수 있는 방법이 있다면, 얼마나 좋을까?Project Lombok 소개사이트 : Project lombokLombok Feature : http://projectlombok.org/features/index.h.. 더보기
Chrome에서 Android기기 Inspect기능으로 Device 검색이 안될 때 먼저 Chrome의 inspect기능이 뭔지 간단히 설명하자면, Java Script나 CSS작업을 하고 브라우저에서 실행되는 값들에 대해 확인을 하기 위해선 흔히 브라우저에서 제공하는 개발자모드를 통해 스크립트 오류가 없는지, CSS 상속관계는 어떻게 되는지 확인을 합니다. 그런데 모바일 기기에서는 브라우저에서 개발자모드를 제공을 안하고 있죠, 즉 모바일용 웹페이지를 만들고 폰으로 확인을 했을때 문제가 발생할 경우 문제가 생기는 부분을 정말 찾기가 어렵습니다. Android 키켓(4.4)이상 버전부터는 Chrome에서 모바일에서 보고있는 웹페이지에 대해 개발자 모드를 지원해주고 있습니다. 즉 일반 웹브라우저처럼 모바일에서 실행되는 Script나 CSS를 확인할 수 있습니다. inspect기능을 이용하기.. 더보기
소스를 입력받아 동적으로 Logic을 실행해 보자! 몇일 전 Java 문법으로 된 문자열을 입력받아서 해당 Logic을 수행 할 수 있는 방안에 대해 검토를 해달라는 요청이 들어와서 이것저것 확인 하던 중 방법을 알아내어 정리하고자 합니다. Java는 Script 언어와 달리 컴파일이라는 과정을 거쳐야지만 비로서 실행 할 수 있는 코드로 변한 되는데요.. 문자열로 된 자바 문법을 실행하기 위해서는 이 컴파일이라는 과정을 거쳐야 하고, 요구사항대로 처리하기 위해서는프로그램이 동작하는 도중에 특정 소스를 Java 파일로 만들고 컴파일까지 한 후 Class를 Load해야 합니다. 나머진 뭐 가능하겠지 생각했지만 프로그램 실행중에 컴파일을 할 수 있나? 라는 생각이 제일 먼저 떠올랐구요, 그래서 우리의 구글신님께 물어본 결과 역시나 JDK에서 기본적으로 제공을 .. 더보기
SSL 관련 유용한 명령어 # 암호화된 SSL 인증서 복호화 명령어$ openssl rsa -in key.pem -out newKey.pem # SSL 인증서 만료일 확인$ openssl x509 -in server.crt -noout -text # 원격에서 SSL 인증서 확인$ echo "" | openssl s_client -connect 서버:443 # 원격에서 SSL 인증서 만료일 확인 $ echo "" | openssl s_client -connect 서버:443 | openssl x509 -noout -dates # 원격에서 SSL인증서의 Signature Algorithm 확인 $ echo "" | openssl s_client -connect 서버:443 | openssl x509 -noout -text # 서버에서.. 더보기
MariaDB 계정 생성 및 권한 설정 1. DB 생성​MariaDB [mysql]> create database demo; Query OK, 1 row affected (0.02 sec)​2. 계정 생성​MariaDB [(none)]> create user 'userId'@'%' identified by 'password'; Query OK, 0 rows affected (0.10 sec)​※ 특정 ip만 허용하고 싶으면 %를 IP나 호스스명으로 변경한다.​3. 권한 설정​MariaDB [mysql]> grant all privileges on demo.* to 'userId'@'%'; Query OK, 0 rows affected (0.09 sec) MariaDB [mysql]> flush privileges; Query OK, 0 row.. 더보기