Web Program/Java2018. 8. 24. 22:49[오류] JsonMappingException 오류 : infinite recursion

com.fasterxml.jackson.databind.JsonMappingException: Infinite recursion (StackOverflowError) Data 는 File을 여러개 가지는 1:N 구조입니다. 아래와 같이 Data와 File은 양방향 설정을 한상태입니다. public class Data { … @OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL, mappedBy = "data") @JoinColumn(name="idx") private List file; } public class File { … @ManyToOne(fetch = FetchType.LAZY, optional = false) @PrimaryKeyJoin..

Web Program/Java2018. 8. 24. 22:30[오류] Hibernate 에서 Collection은 형변환시 발생되는 문제

java.lang.ClassCastException: org.hibernate.collection.internal.PersistentBag cannot be cast to java.util.ArrayList public class DATA { … @OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL) @JoinColumn(name="idx") private List file; } ArrayList files = (ArrayList)data.getFiles(); Hibernate 에서 Collection은 형변환시 발생되는 문제 해결방법 List files = data.getFiles(); 형변환하지 않으면 해결됩니다. 오류가 사라졌습니다, 썩세스!!

Web Program/Java2018. 8. 22. 14:50[오류] JPA 과 lombok 같이 사용시, 유의사항

@EqualsAndHashCode 1. hashCode(), equals() 를 생성 2. static or transient 가 아닌 모든 필드들이 대상이 됨. getter 가 있으면 자동으로 해당 메소드가 호출된다. 사용하지 않고 필드를 직접 호출하려면 doNotUseGetter=true 특정 필드를 제외하거나 포함하려면... 제외하는 속성 exclude = {"field1", "field2"} 포함하는 속성 of = {"field3", "field4"} 속성 callSuper = true 를 사용시 주의 SuperClass가 없을때, 사용하면 컴파일 에러 SuperClass도 lombok을 사용했다면 문제되지 않지만, 예상하지 못한 문제가 발생 JPA와 lombok을 함께 사용시, OneToOne,..

[오류] Java Problem - The method getUserName() is undefined for the type User
Web Program/Java2018. 6. 30. 23:32[오류] Java Problem - The method getUserName() is undefined for the type User

The method getUserName() is undefined for the type User add lombok dependency org.projectlombok lombok 1.16.8 provided 이클립스에서 애노테이션 @Setter, @Getter을 사용하고 발생되는 문제이다. 해결방법 이클립스에 javaagent 에 lombok 을 추가 해주면 된다. 1. 방법 lombok.jar 실행 아래의 경로는 각 window 사용자계정에 따라 다르다 1 C:\Users\[사용자계정]\.m2\repository\org\projectlombok\lombok\1.16.8 lombok-1.16.8.jar 을 더블클릭하여 실행한다. 2. 방법 cmd.exe에서 실행 아래오 같이 lombok.jar 파일..

Web Program/Java2018. 6. 14. 22:10Log4j 의 모든 것

로그 출력 구현체 value 속성 값 설명 SLF4J SLF4J LOG4J Log4j LOG4J2 Log4j 2 JDK_LOGGING JDK logging COMMOUS_LOGGING Apache Commons Logging STDOUT_LOGGING 표준 출력 장치로 출력 NO_LOGGING 로그 출력 기능 사용 안함 클래스명(패키지명 포함) org.apache.ibatis.logging.Log 인터페이스의 구현체 로그 출력 등급표 로그 출력 등급 설명 FATAL 애플리케이션을 중지해야 할 심각한 오류 ERROR 오류가 발생했지만, 애플리케이션은 계속 실행할 수 있는 상태 WARN 잠재적인 위험을 안고 있는 상태 INFO 애플리케이션의 주요 실행 정보 DEBUG 애플리케이션의 내부 실행 상황을 추적해 ..

Web Program/Java2018. 6. 13. 02:23이클립스에서 Tomcat 서버 실행 시 OutOfMemoryError

java.lang.OutOfMemoryError: PermGen space 이클립스에서 Tomcat 서버 실행 시 메모리 오류 발생 해결방법 1. Heap 사이즈를 증가시켜 주면 정상적으로 해결된다. 2. 메모리 누수 방지를 위해 Tomcat 설치 디렉토리 conf/web.xml 파일에서 안쪽에 enablePooling 설정을 해제 한다. enablePooling false

image