파란하늘의 지식창고
반응형
Spring Boot Mongodb reactive 설정하기
Study/Java 2018. 12. 3. 23:03

공부하면서 적는 내용이라 정확하지 않을 수 있음. mongodb 를 모르는 상태에서 연동을 하는 정도의 수준 reactive를 공부하려고 이 설정을 진행 하였음. reactive가 아닌 경우의 설정은 생략 spring-data-mongodb 설정 boot를 사용하지 않는 경우 아래와 같이 AbstractReactiveMongoConfiguration를 구현하여 설정을 한다. dependency 설정 org.springframework.data spring-data-mongodb java config 설정 @Configuration @EnableReactiveMongoRepositories(basePackages = "net.luversof.blog.repository") public class BlogR..

빌드 시 constructor ... already defined in class 에러가 발생하는 경우
Study/Java 2018. 11. 28. 09:05

로컬에서 서버가 잘 동작하는데 빌드 할 때 constructor ... already defined in class 에러가 나는 경우가 있다. 해당 에러는 lombok 1.16.22 에서 발생하는 에러이다. 1.16.22 - constructor ... already defined in class 해결 방법은 lombok 버전을 1.18.0 이상으로 변경하거나 또는 아래와 같이 @Data 와 @NoArgsConstructor 선언 순서를 맞춰주어야 한다. @NoArgsConstructor @Data public class Foo { } @Data를 꽤 많은 부분에서 사용하고 있는 경우가 대다수이므로 순서를 바꾸기 보단 lombok 버전을 변경하는 것을 추천한다. Spring Boot를 사용하고 있는 경우..

JDK 11 New Features
Study/Java 2018. 11. 22. 19:17

JDK의 버전별 변경 사항은 이곳을 참고하세요.특징과 일정은 JEP 2.0 draft에 의해 개정된 JEP 프로세스를 통해 관리된다. JDK 11 은 3년마다 제공되는 Long-term support 버전임 Spec Java SE 11 (18.9) Platform JSR (384) 에 정의된 바와 같이 JSR 384 구현이 목표 실제 Spec은 Final Release Specification 문서를 참고해야함Final Release Specification Feature summary전체 JEP Feature 목록은 OpenJDK의 JDK 11 문서로 확인할 수 있다.Component Feature Security ChaCha20 and Poly1305 Cryptographic Algorithms 암호..

JDK 10 New Features
Study/Java 2018. 11. 21. 22:09

JDK의 버전별 변경사항은 이곳을 참고하세요.특징과 일정은 JEP 2.0 draft에 의해 개정된 JEP 프로세스를 통해 관리된다. Spec Java SE 10 (18.3) Platform JSR (383) 에 정의된 바와 같이 JSR 383 구현이 목표 실제 Spec은 Final Release Specification 문서를 참고해야함Final Release Specification Feature summary 전체 JEP Feature 목록은 OpenJDK의 JDK 10 문서로 확인할 수 있다. Component Feature Core Libraries Additional Unicode Language-Tag Extensions 추가 유니코드 Language 태그 확장 Time-Based Releas..

article thumbnail
JDK 9 New Features
Study/Java 2018. 11. 21. 18:16

JDK의 버전별 변경 사항은 이 곳을 참고하세요.특징과 일정은 JEP 2.0 draft에 의해 개정된 JEP 프로세스를 통해 관리된다.SpecJava SE 9 Platform Umbrella JSR (379) 에 정의된 바와 같이 JSR 379 구현이 목표 실제 Spec은 Final Release Specification 문서를 참고해야함Final Release Specification Feature summary 전체 JEP Feature 목록은 OpenJDK의 JDK 9 문서로 확인 할 수 있다.Component Feature Core LibrariesConvenience Factory Methods for Collections불변 컬렉션 생성 편의성 메소드 제공Enhanced Deprecation@..

article thumbnail
JCP JSR JEP에 대해
Study/Java 2018. 11. 20. 09:57

JCP (Java Community Process)자바 기술에 대한 표준 기술 명세를 개발하는 메커니즘.JCP 절차등록된 커뮤니티 멤버(전세계 여러 유저 그룹들, 파트너 멤버, 정회원)로 부터 시작 -> Early Draft(초기 초안)가 작성되고 -> 공개 리뷰를 한 후 -> 최종 초안 제안 -> 승인 투표 -> 유지 보수 검토stage 별로 보면 최종 릴리즈 된 것도 많지만 통과되지 못하고 철회된 것도 많음 (JSRs by stage)JSR (Java Specification Requests)자바 요구 사항 상세 명세서JEP (JDK Enhancement Proposal)Java Development Kit와 OpenJDK 를 향상된 기능에 대한 제안을 수집하기 위해 오라클이 초안을 작성하는 프로세스..

RestTemplate list 반환하기
Study/Java 2018. 11. 16. 17:09

요청을 반환받는 클래스가 다음과 같다고 가정한다. @Data public class ResultClass { private long idx; private String name; } List로 리턴 받는 방법 - 문제가 있음. 비추천 List list = restTemplate.getForObject("url", List.class); 이 방법은 문제가 있다. 컴파일에는 문제가 없지만 호출하고 나서 list 값을 살펴보면 ResultClass 객체가 아닌 LinkedHashMap 객체를 가지고 있는 걸 확인할 수 있다. 그래서 만약 다음처럼 호출하는 순간 에러가 발생한다. List list = restTemplate.getForObject("url", List.class); ResultClass resu..

자주 쓰는 spring util 기록
Study/Java 2018. 11. 14. 17:31

자주 쓰는 유틸 목록 기록 계속 업데이트 할 예정 유틸은 알파벳 순서로 정렬 org.springframework.beans.BeanUtils T instantiateClass(Class clazz) 해당 class 로 Object 생성 A a = BeanUtils.instantiateClass(A.class); void copyProperties(Object source, Object target) source의 속성을 target으로 복사 확장한 class에서 기존 class의 값을 복사해서 쓰거나 동일한 속성값이 있는 두 클래스간 값 복사 시 유용함 org.springframework.core.GenericTypeResolver Class[] resolveTypeArguments(Class clazz..

java Exception은 어떻게 사용하는게 좋을까?
Study/Java 2018. 11. 12. 17:33

Exception을 사용하는 방법에 대한 글은 아니고 어떻게 쓰는게 좋은지에 대해 정리해보았다. 시대가 변하면 방법도 변하기 마련이다. 이 글의 내용이 정답은 아니고 다만 글을 쓴 시점에서 어떤게 가장 좋을지 정리해본 글이다.과거 사용하던 에러 처리 방식 1예전에는 아래와 같은 방식으로 Exception을 모두 감싸고 결과를 반환하는 형태로 개발하던 시절도 있었다. //대상 객체 public class Article { // ... article 설정 } // 결과 반환 객체 public class ArticleResult extends Article { boolean isSuccess; String errorCode; String errorMessage; // ... 에러 관련 설정 } // 대상 서비..

Spring Boot 2.1.0 Release
Study/Java 2018. 10. 31. 16:26

Spring Boot 2.1.0 이 릴리즈 되었다. 이전 버전은 2.0.6.RELEASE 였다. Spring Framework 5.1 기반이다. Spring Boot 2.1.0 Blog Spring Boot 2.1 Release NotesUpgrading to Spring Framework 5.x 마이너 버전이 변경되어서 판올림 시 변경해줘야 하는 부분이 있다. Spring Boot 2.1.0 Configuration Changelog 변경 작업을 하면서 확인한 부분Servlet Path기존 server.servlet.path 가 spring.mvc.servlet.path로 변경Spring Version POM Propertypom에서 사용하던 spring.version 속성이 spring-framewo..

반응형