파란하늘의 지식창고
Spring Data Mongodb 사용해보기
Study/Java 2018. 12. 24. 14:18

Spring Boot Mongo 설정 MongoClient를 바로 사용하는 방법과 MongoTemplate을 사용해서 Spring Data의 Repository를 사용하는 방법이 있다. 아래 dependency를 추가한다. org.springframework.boot spring-boot-starter-data-mongodb 각자 환경에 맞게 아래 properties를 추가한다. (만약 설정하지 않으면 아래 설정이 default로 사용된다.) spring.data.mongodb.host=localhost spring.data.mongodb.port=27017 아래처럼 configuration 설정을 추가한다. @Configuration @EnableMongoRepositories(basePackages ..

JDK 11에서 java.xml.bind 관련 에러 발생하는 경우
Study/Java 2018. 12. 13. 17:03

JDK 9나 10에서 프로젝트 실행 시 아래와 같은 오류가 나게 되는 경우가 있다. Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBContext Java EE 모듈과 CORBA 모듈이 Deprecated 되면서 기본 참조가 되지 않아 발생한 문제였다. 내가 직접 쓰지 않더라도 사용하고 있는 오픈소스 라이브러리가 참조하고 있으면 발생하게 된다. (내 경우 spring cloud의 neflix eureka 라이브러리 쪽이 java.xml.bind 모듈을 참조하고 있었다.) 하지만 Deprecated 명시가 되어 있고 아직 라이브러리가 제거되지 않은 상태여서 --add-modules JVM 옵션만 추가하면 사용이 가능했다. java jar -..

Spring Boot multi module, multi profile 환경에서 @PropertySouce 사용하기
Study/Java 2018. 12. 10. 17:21

springframework는 profile 설정을 통해 환경마다 다른 설정을 호출할 수 있는 기능을 제공한다. spring application 을 실행 시 실행 변수로 spring.profiles.active를 선언하는 방식이다. $ java -jar -Dspring.profiles.active=p1 application.jar 사용 방법 1 - SpEL로 profile 지정 profile 별 properties 파일을 호출하는 경우 Spring 에서 제공하는 @PropertySource을 아래와 같이 사용한다. @Configuration @PropertySource("classpath:sample-${spring.profiles.active}.properties") public class Confi..

article thumbnail
STS 4.0.0 이후 java, properties 에디터에서 ctrl + space (content assist) 가 동작하지않는 경우
Study/Java 2018. 12. 6. 23:32

STS 4.0.0 이후 java 파일이나 properties 파일에서 ctrl + space (content assist)가 안되는 경우가 있었다.(워크스페이스와 git 소스를 다 지우고 다시 만들어도 마찬가지였음)Java 에디터에서 안되는 경우이 경우 아래 위치에서 초기화를 한번 해주면 된다.(Java Proposals가 언체크 되어 있어 동작하지 않았었다.)Preferences -> Java -> Editor -> Content Assist -> Advanced 메뉴에서 restore defaults 적용Properties 파일에서 안되는 경우이 경우에 대해서는 Spring 위키 문서에 해결 방법이 설명되어 있다.Boot Properties Editor4.0.0 이전엔 Java Properties F..

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..