본문 바로가기
반응형

슬기로운 자바 개발자 생활/스프링 및 자바웹 서비스34

JPA 스프링 부트, 마리아디비, 간단예제(Spring Boot and JPA, MariaDB) JPA 스프링 부트, 마리아디비, 간단예제(Spring Boot and JPA, MariaDB) 준비물 : 마리아디비, 스프링부트, 마리아디비 자바클라이언트, 메이븐, java8 마리아DB를 이용 JPA 간단한 사용법을 포스팅합니다. 테이블 하나 만들고 CRUD (생성,업데이트,삭제,조회) 기능을 구현해봅니다. 1. 메이븐 org.springframework.boot spring-boot-starter-data-jpa org.springframework.boot spring-boot-starter-web org.mariadb.jdbc mariadb-java-client runtime org.projectlombok lombok true org.springframework.boot spring-boot-s.. 2022. 11. 18.
Spring WebFlux, RX JAVA ReplaySubject 구독자가 새로 생기면 항상 데이터의 처음부터 끝까지 발행한다. 최근 구독자는 예전 구독자들이 받은 데이터들까지 받게 된다. 이거 위험하다. 데이터량이 엄청나면.... 다 받으니 메모리 문제가 일어나니까 조심해야 됨. 대략 RxJava 예) ReplaySubject subject = ReplaySubject.create(); subject.subscribe(data -> System.out.println(("Subscriber 1# => "+ data))); int value = 0; for(int i=0 ; i System.out.println(("Subscri.. 2022. 11. 8.
slf4j 설정. 평범한 자바프로젝트. 공부용 설정. 인텔리J 1. 메이븐 설정 2. pom.xml org.slf4j slf4j-api 1.7.25 ch.qos.logback logback-classic 1.2.3 org.slf4j jcl-over-slf4j 1.7.25 3. resource 폴더에 lgback.xml 작성 %d{HH:mm} %-5level %logger{36} - %msg%n ./application_log/application.log %d{yyyyMMdd HH:mm:ss.SSS} [%thread] %-5level [%logger{0}:%line] - %msg %n ./application_log/application_log.%d{yyyy-MM-dd}.%i.log 5mb 5 4.코딩 해보기 . com 패.. 2022. 6. 21.
나는 공부 중 Reactive Streams 첫 번째 우연히 MSA를 공부하다가 도서관에서 RxJava를 알게됨. RxJava 책을 빌려보다가 Reactive 프로그래밍에 대해 알게 됨. 리액티브 스트리밍, 리액티브 프로그래밍, 함수형 프로그래밍, 비동기, 백 프레셔, 논블록킹 ... 어디선가 지나치듯 들어봤고 Node.js 하면서 비동기 처리도 얼릿 들어보고 대충 이곳저곳 기웃거리며 조금 안다고 생각했는데 현실은 모르고 있었네요. "사건1" 제 기준에서 엄청난 량의 데이터를 뽑는 유저들이 있었습니다. 20만건 정도의 로우인데 컬럼이 50개가 넘고, 쿼리도 꽤 복잡했습니다. 그런데 조회를 하면 10 ~ 30분 정도 넘게 걸리면서 WAS가 먹통이 되더라고요. 모니터링 툴을 보며 돌려보니 힙이 80% 이상 차고 원래대로 돌아가지도 않고... WAS 메모리를 늘.. 2022. 4. 27.
RestTemplate Rest Api 호출해보기 스프링 버전에 따라 조금씩 사용법이 다르다. 최대한 심플하게 서버와 클라이언트를 만들어서 테스트를 해보며 기능을 확장하는 방법이 공부하기 좋다. 1. Rest Server를 하나 만들고. 멤버 VO하나 만들어 20개 정도 자료가 나오도록 만든다. 2. 잘 돌아가는지 확인해보기 크롬 API 툴로 사용해보니 잘나온다. 그러면~~~~ 이제 이클립스로 스프링 프로젝트를 만들어서 테스트 RestTemplate restTemplate = new RestTemplate(); ResponseEntity entity = restTemplate.exchange("http://codev.lgchem.com:8080/member", HttpMethod.GET, null,new ParameterizedTypeReference(.. 2021. 12. 8.
메이븐 설정 하기 메이븐 웹사이트에서 다운로드 이후 메이븐이 다운받을 jar 폴더 지정 이클립스 설정 끝 2019. 4. 13.
반응형