본문 바로가기

Developer/JAVA

(33)
[JAVA/Spring] OpenEntityManagerInView OpenEntityManagerInView (OEIV) OpenEntityManagerInView (OEIV)는 Spring Framework와 JPA(Java Persistence API)를 함께 사용할 때 발생하는 지연 로딩(Lazy Loading) 문제를 웹 환경에서 해결하기 위해 설계된 패턴이자 Spring에서 제공하는 인터셉터(Interceptor)1. OEIV의 개념 및 목적개념설명목적웹 요청 처리 과정 전체에서 JPA의 EntityManager를 열린 상태로 유지하여, View 렌더링 단계에서 발생하는 지연 로딩 예외(Lazy Loading Exception)를 방지작동 방식Spring의 DispatcherServlet이 HTTP 요청을 받으면, OpenEntityManagerInViewI..
[JAVA/SPRING] NoUniqueBeanDefinitionException : No qualifying bean of type 'jakarta.persistence.EntityManagerFactory' available NoUniqueBeanDefinitionException 오류 해결 방법ERROR [main] o.s.boot.SpringApplication - Application run failedorg.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'org.springframework.boot.autoconfigure.web.servlet.WebMvcAutoConfiguration$EnableWebMvcConfiguration': Unsatisfied dependency expressed through method 'setConfigurers' parameter 0: Error creating b..
Spring Batch : java.sql.SQLIntegrityConstraintViolationException: Duplicate entry '0' for key 'BATCH_JOB_INSTANCE.PRIMARY' 배치 실행 성공 여부 확인시 아래 에러 확인.2025-11-18 05:05:00.059 INFO [quartzScheduler_Worker-2] org.quartz.core.JobRunShell - Job DEFAULT.hibernateUsersJobLauncher threw a JobExecutionException:org.quartz.JobExecutionException: Batch Job execution failed. at com.eva.as.batch.batch.AbstractBatchJobLauncher.executeInternal(AbstractBatchJobLauncher.java:43) at org.springframework.scheduling.quartz...
[JAVA] Code Convetion & Formatter 설명된 IDE는 Intellij IDEA이며, 코드 컨벤션 준수를 위해 CheckStyle 및 Google Style 기반 Formatter를 설정합니다. 아래는 설정 및 적용 방법에 대한 상세 가이드입니다.사용하는 이유?Google Style 기반 코드 컨벤션을 쉽게 준수할 수 있고, CheckStyle 플러그인으로 코드 스타일 오류를 사전에 방지하고, Google Style Formatter를 통해 일관된 코드 품질을 유지할 수 있음.>>> 이를 통해 팀 내 개발 생산성과 코드 일관성을 동시에 확보할 수 있습니다.1. Intellij IDEA에 CheckStyle 플러그인 설정1.1. 플러그인 설치 1. Intellij IDEA를 실행합니다. 2. 상단 메뉴에서 Settings(설정) → **Plug..
[JAVA] 이클립스 Decompiler 설치 개발하면서 Class 파일을 열어서 보고 싶은 순간들이 있다. 패키징되어있다던가, 이미 컴파일된 파일들을 확인하려면, 디컴파일을 통해서 사람이 인지할 수있는 언어로 변환시켜야만이 Class 파일의 내용 읽어들일 수 있게 된다. 그리고, 이클립스에 Enhanced Class Decompiler 을 이용하여 그러한 기능을 수행할 수 있다. 1. Help > Eclipse Marketplace 2. Enhanced Class Decompiler 인스톨 특별히 설정해야할 것들은 없고, 아래의 순서대로 진행하여 해당 플러그인을 설치해주도록 한다. 3. 설치완료 후, 아래대로 진행 4. 설치 완료 후의 작업 설치가 완료되면, Preferences > JAVA 항목에 Decompiler 를 확인할 수 있고, Defa..
[ JAVA ] org.hibernate.HibernateException: Unsupported property type for generator annotation .. 간단하게 이야기해서, java.security.Timestamp 는 해당 어노테이션을 지원하지 않는다는 이야기의 에러이다. import java.sql.Timestamp; 기존 java.security.Timestamp 를 위와 같이 변경해줌으로써, 해당 에러해결이 가능하다.
[JAVA-THEORY] 자바 이론 2 객체지향 프로그래밍 실제 세계는 사물(객체) 로 이루어져 있으며, 발생하는 모든 사건들은 사물간의 상호작용한다. 즉, 실제 사물의 속성과 기능을 분석하여, 데이터(변수) 와 함수로 정의함으로써 실제 세계를 컴퓨터 속에 옮겨 놓은 것과 같은 가상세계를 구현하여, 가상세계에서 프로그램을 실행함으로써, 많은 시간과 비용을 절약할 수 있었다. 객체지향언어 코드의 재사용성이 높다. : 기존에 작성한 코드를 이용하여, 새로운 코드 작성시 참조가 가능하다. 코드의 관리가 용이하다. : 코드간의 관계를 이용하여, 적은 노력으로 코드 변경이 가능하다. 신뢰성이 높은 프로그래밍을 가능하게 한다. : 제어자와 메서드를 이용하여, 데이터를 보호할 수 있고, 코드의 중복을 제거함으로서 코드의 불일치로 인한 오동작을 방지할 수 ..
[JAVA-THEORY] 자바 이론 1 [출처] 자바의정석 JAVA JAVA는, 썬 마이크로 시스템즈에서 개발하여 발표한 객체지향 프로그래밍 언어. 자바의 특징 운영체제에 독립적이다. 운영체제에 설치한, 자바가상머신 ( JVM ) 을 통해, 자바 응용프로그램이 실행되기 때문에, 자바 프로그램은 OS 로 부터 독립적으로 실행 가능하다. ( Write Once, Run Anywhere ) JVM : 자바를 실행하기 위한 가상 머신, 객체지향언어이다. 객체지향 프로그래밍 언어 중 하나이며, 객체 지향개념의 특징인 [ 상속, 캡슐화, 다형성 ] 이 잘 적용된 순수한 객체지향 언어로 평가 받는다. 배우기 쉽다. 자바의 연산자와 기본 구문은 C++ 로부터, 객체지향 관련 구문은 스몰톡 이라는 객체 지향언어에서 가져왔다. 객체지향 언어의 특징인 재사용성과..