본문 바로가기

분류 전체보기165

Java DateTimeFormatter VS SimpleDateFormat DateTimeFormatter VS SimpleDateFormat Java 8 버전에서 날짜와 관련된 많은 클래스가 개선되었다. 그 중에 하나가 Local~ 시리즈인데, 이와 함께 기존 SimpleDateFormat 클래스의 개선된 버전인 DateTimeFormatter가 소개되었다. 스레드 안전성: DateTimeFormatter는 스레드 안전하므로, 여러 스레드가 동일한 인스턴스를 문제없이 사용할 수 있다. 반면에, SimpleDateFormat은 스레드 안전하지 않다. 불변성: DateTimeFormatter는 불변객체로서, 한 번 인스턴스를 생성하면 그 속성을 변경할 수 없다. 유연성 및 오류 처리: DateTimeFormatter는 SimpleDateFormat보다 포맷팅 옵션 측면에서 더 다.. 2023. 12. 1.
Java SSL 인증 무시하기(PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException) 들어가며 클라이언트에서 서버로 https요청시 ssl 인증을 하는 과정에서 인증 정보가 확인되지 않는 경우 이를 처리할 수 있는 방법이 두 가지가 있다. 웹브라우저는 인터넷망을 통해 신뢰할 수 있는 기관들의 루트 인증서부터 하위 목록까지 모두 가지고 있으나, 브라우저가 아닌 어플리케이션등에서 ssl 인증서가 설치된 서버로 서비스 요청하는 경우 해당 인증서의 cert 파일을 등록해줘야 한다. 이번 블로그에서는 인증 절차를 무시하고 https 요청을 처리하는 방법을 알아본다. 시작하기 앞서 이 방법은 특수한 상황에서만 사용되어야 한다. 가령, 내부망 A서버(클라이언트)에서 B서버(인증서 설치)로 서비스 요청 테스트등을 할 때의 경우를 들수 있다. RestTemplate 요청 후 에러 Spring RestTe.. 2023. 10. 11.
Flutter - Unhandled Exception: PlatformException(sign_in_failed, com.google.android.gms.common.api.ApiException: 10: , null, null) 오류 발생 시 오류메시지 Unhandled Exception: PlatformException(sign_in_failed, com.google.android.gms.common.api.ApiException: 10: , null, null) Flutter 구글 로그인 구현 중 위와 같은 오류가 발생했다. 셋업한 환경은 다음과 같았다. 셋업 환경 1.GCP 사용 ( Not Firebase ) 2.OAuth 동의 3.사용자 인증 정보 등록 SHA-1 인증서 디지털 지문 등록 필자는 keytool을 사용할 때 jks 파일을 생성하지 않았다. 다음과 같이 입력 keytool -keystore ~/.android/debug.keystore -list -v -alias androiddebugkey -storepass androi.. 2023. 9. 15.
JBoss EAP7, Wildfly JNDI 설정방법(with Spring JNDI 설정) JBoss EAP의 JNDI를 사용하여 oracle dataresource를 구성하는 방법을 알아보자. (Wildfly의 JNDI 설정방법 동일) 개발환경 IntelliJ JBoss EAP 7.x oracle ojdbc8.x jar module 추가 먼저 오라클 드라이버를 추가해야 한다. 여기서는 ojdbc8.jar를 사용했다. module은 다음의 위치에 새로 추가한다. 위 이미지 처럼 jboss_root_path/modules/system/layers/base/com 하위에 새로운 디렉토리, oracle/main을 생성하고, 드라이버 jar파일을 위치한다. 추가로 module.xml 을 생성한다. module.xml standalone.xml jdbc:oracle:thin:@localhost:test.. 2023. 7. 25.