일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 자바패턴
- java
- AES256
- gradle
- git연재
- 주식용어
- GPT
- docker
- git초보자팁
- MYSQL
- scrapy
- 개발생산성
- python
- gitreflog
- 민생회복소비쿠폰
- JetBrains
- git입문
- 민생회복지원금
- IntelliJ
- 엑셀강의
- 엑셀중급강의
- 엑셀
- 엑셀고급강의
- git
- 버전관리
- Ai
- git초보
- 개발툴팁
- Spring
- 디버깅
목록IT/JAVA (42)
나만의공간
Stream은 Java 8에서 신규로 추가된 메이져 기능 중 하나로 java.util.stream 클래스에 포함되어 있는 기능입니다. Stream은 다양한 요소에서 생성이 될수 있는데 stream() 과 of() 메서드를 사용하여 컬렉션 또는 배열을 생성하게 됩니다. Stream 기본 형태 import java.util.Arrays; import java.util.stream.Stream; public class StreamSample { public static void main(String[] args) { streamSample1(); } public static void streamSample1() { // 배열 Stream 객체 변환 String[] array = new String[]{"a",..
Spring에서 제공하는 RestFul API 연결방식은 여러개가 존재 하는데RestTemplate방식을 주로 사용하다 Feign방식을 사용하고 있었습니다.Feign방식에서 WebClient 방식으로 변경을 진행 했었는데 진행도중 알수 없는 오류가 발생하여 발생 원인을 해결하고자 많은 시행 착오를 거치게 되었는데 WebClient방식을 사용할때는 상대편 서버 환경을 고려 하여 변경이 필요하거나, 이슈가 안되도록 사전에 설정값을 잘 작성해야 합니다.WebClient 오류 현상(Connection prematurely closed BEFORE response 에러 대응)WebClient 방식으로 변경한 후 평상시 잘 통신이 되는데 어느정도 시간이 지나면 아래와 같은 메시지가 나오구 해당 요청건은 오류가 발생..
자바로 개발을 하다 보면 CheckedException 과 unCheckedException에 대한 이야기가 나오구 해당 Exception으로 인하여 트랜잭션 관리와도 연결되게 됩니다. 위 두개의 Exception용어가 어떤 차이가 있는지 정리를 했습니다. Checked Exception (확인된 예외) Checked Exception은 컴파일러가 예외 처리를 강제하는 예외입니다. 이 예외들은 주로 외부 리소스나 외부 시스템과의 상호 작용 시 발생할 수 있습니다. 메서드가 Checked Exception을 발생시키면 해당 메서드를 호출한 곳에서 예외를 처리해야 합니다. 이는 예외를 try-catch 블록으로 처리하거나, throws 절을 통해 예외를 호출자에게 전파하여 처리할 수 있습니다. Checked..

자바 프로젝트에서 코딩 컨벤션(Java Coding Convention)을 일관되게 지키는 것은 협업과 코드 품질 관리에 매우 중요합니다.하지만 모든 코드를 사람이 직접 확인하기는 어렵기 때문에, 자동으로 코딩 스타일을 검사해주는 도구를 활용하는 것이 좋습니다.IntelliJ IDEA에서는 CheckStyle 플러그인을 통해 이러한 검사 작업을 간편하게 수행할 수 있습니다.특히 네이버 자바 코딩 컨벤션처럼 사내/조직 표준 컨벤션을 적용한 프로젝트라면, CheckStyle을 통해 컨벤션 위반 여부를 자동으로 검출할 수 있어 매우 유용합니다.이 글에서는 IntelliJ에 CheckStyle을 설치하고, 자바 코딩 컨벤션 검사 규칙을 적용하는 방법을 단계별로 안내합니다.초보자도 쉽게 따라 할 수 있으니, 프로..

코딩 컨벤션은 왜 적용할까? 코딩 컨벤션은 어느 누구나 코드를 읽기 쉽고 관리하기 쉬운 규약을 따르는 것입니다. 여러 사람이 작업할 경우 일관성 있는 코드 작성을 유지할 수 있어 가독성을 높이는 데 필수적입니다. 또한, 신규 인력이 들어올 경우에도 더 빠르게 적응할 수 있습니다. 코딩 컨벤션은 서로 간의 약속입니다. 다양한 방식으로 적용할 수 있지만, 구두나 문서로만 정의하면 잊혀지거나 잘못 적용될 수 있습니다. 따라서, 네이버나 구글과 같은 대기업에서 사용하는 개발 도구에 적용 가능한 가이드를 사용하는 것이 좋습니다. 저는 네이버에서 사용하는 캠퍼스 핵데이 적용 방법을 써 볼 예정입니다. 코딩 컨벤션은 코드 작성 시 일관성을 유지하고, 가독성을 높이며, 버그를 예방하고, 코드의 효율성을 개선하는 데 도..

자바로 프로젝트를 진행하면 프로젝트마다 자바 버전이 달라, 로컬환경에 다양한 자바 버전을 설치 하게 됩니다. 이때 내 로컬에 어떤 버전이 설치 되어 있고, 맥북 M1에 맞는 JDK가 설치 되어 있는지 확인이 필요합니다. Java Install List cd /usr/libexec ./java_home -V 위와 같이 로컬에 설치된 JDK 리스트를 볼 수 있습니다. 맥 M1을 사용하고 계시다면 arm64 버전에 JDK를 설치 하시기를 권장 드립니다. Java Version별 경로 노출 echo $(/usr/libexec/java_home -F -v11) 로컬에 설치 된 JDK11에 대한 경로를 출력해서 알려준다.

JPA관련 학습을 이제 진행하고자 합니다.저도 모르는 상태에서 하나씩 학습하면 배운 내용들을 블로그로 기록 해 놓아 나중에 복습 하고자 하네여.JPA란구글에서 검색하면 JPA에 대한 많은 설명이 나옵니다.위키백과에 있는 용어를 가져오면 아래와 같이 설명 되어 있습니다.용어 적인 설명은 심플하고 간단합니다.그럼 왜 우리가 기존에 잘 사용하고 있던 Mybatis / ibatis를 버리고 JPA를 또 배워야 할까여?자바 퍼시스턴스 API 또는 자바 지속성 API(Java Persistence API, JPA)는 자바 플랫폼 SE와 자바 플랫폼 EE를 사용하는 응용프로그램에서 관계형 데이터베이스의 관리를 표현하는 자바 API이다.기존에 EJB에서 제공되던 엔터티 빈(Entity Bean)을 대체하는 기술이다.자..
JWT(Json Web Token)의 약자로 전자서명된 URL-safe의 Json 입니다. 전자 서명은 Json의 변조를 체크 할 수 있게 되어 있습니다. JWT는 속성정보를 Json 데이터 구조로 표현한 토큰으로 RFC7519 표준입니다. JWT는 서버와 클라이언트 간 정보를 주고 받을 때 Http 리퀘스트 헤더에 Json 토큰을 넣은 후 서버는 별도의 인증 과정없이 헤더에 포함 되어 있는 JWT정보를 통해 인증합니다. 이떄 사용되는 Json 데이터는 URL-Safe 하도록 URL에 포함할 수 있는 문자만으로 만듭니다. JWT는 HMAC 알고리즘을 사용하여 비밀키 또는 RSA를 이용한 Pubilc Key / Private Key 쌍으로 서명할 수 있습니다. JWT와 관련된 표준인 JWS와 JWE란 JW..

개발을 하다가 보면 .class파일만 존재하고 .java 소스 파일이 없는 경우가 존재 합니다. 예전에는 jad라는 별도 프로그램으로 .class파일을 디컴파일해서 보고 했는데 Eclipse에서 제공하는 Plugin을 추가 하면 간단히 디컴파일 해서 볼 수 있습니다. Decompiler PlugIn 설치 (Enhanced Class Decompiler 3.2.2) -. Eclipse MarketPlace에서 Enhanced Class Decompiler를 찾아서 설치 합니다. -. 설치가 완료되면 STS를 재부팅 하게 됩니다. Decompiler 대상 파일 설정 -. 디컴파일을 할 파일 확장자들에 대한 Tools을 변경합니다. -. Preferences -> General -> Editors -> Fi..

ModelMapper 사용으로 인한 오류 대응 ModelMapper를 이용하여 DTO or Entity or Domain등에 Model 매핑을 잘 사용하고 있었다. QA환경에서 지속적인 테스트를 수행하고, 아무 문제 없이 잘 되고 있었다. 곧 PRD환경 반영을 위해 PRD에서 Business 오류가 없는지 30시간 정도 수행을 했는데, 제니퍼에서 OOM(Out Of Memory)가 발생하고 해당 Thread는 종료 되버리는 현상이 발생하기 시작 ㅜ.ㅜ 오류 메시지는 아래와 같다. (처음에는 Configure Error문구가 보여 환경설정 문제인지 알고 한참 찾았음) trace: org.modelmapper.ConfigurationException: ModelMapper configuration error..