설치&설정 관련/Spring Framework
-
JPA 에서 FLUSH 처리시 실행 순서설치&설정 관련/Spring Framework 2024. 8. 30. 18:26
Hibernate는 연관된 엔터티 상태 작업의 순서대로 SQL 문을 실행하지 않습니다.다음과 같은 코드가 있다고 예상할 경우Person person = entityManager.find(Person.class, 1L);entityManager.remove(person);Person newPerson = new Person();newPerson.setId(2L);newPerson.setName("John Doe");entityManager.persist(newPerson);저희는 DELETE 질의 이후 INSERT 질의를 기대 합니다.하지만 동작은 아래와 같습니다.INSERT INTO Person (name, id)VALUES ('John Doe', 2L)DELETE FROM Person WHERE id ..
-
spring jpa 사용시 페이징 처리설치&설정 관련/Spring Framework 2024. 8. 1. 18:15
게시글 목록 기능에서 페이징 처리는 단순하지만 많이 사용되는 기능입니다.주요 항목요청 값 : 조회 하려는 페이지 위치, 페이지에서 필요로 하는 게시글 수, 추가로 검색 조건응답 값 : 게시글 목록, 페이지 네비게이션을 위한 총 게시글 수구현 방법이를 일일이 구현 하기 보다 jpa에서 지원하는 Pageable 와 Page 라이브러리를 사용하면 간단한게 처리 됩니다.예제 코드// Controllerimport org.springframework.data.domain.Pageimport org.springframework.data.domain.Pageableimport org.springframework.web.bind.annotation.GetMappingimport org.springframework.we..
-
spring-boot with logback설치&설정 관련/Spring Framework 2024. 7. 26. 17:32
spring-boot 에서 초기화 오류시 로그 표기 방법현상 : spring-boot 초기화 중 오류 발생시 log가 명확하게 표시 되지 않고 종료 오류 발생원인 : logback을 사용하고 있고, 설정 파일명을 logback.xml로 사용중해결 방안 : logback.xml 을 logback-spring.xml 으로 변경26.7 Logback Extensions 를 확인하면, logback.xml을 사용하면 너무 빠르게 로딩 되어서 spring 오류가 출력 안되는 경우가 발생 할 수 있다고 합니다.참고 자료83. Logging
-
Springframework 주요 컨셉과 사용 예제설치&설정 관련/Spring Framework 2021. 7. 20. 00:08
자바라 쓰고 Springframework를 공부한다. Spring의 주요 3가지 컨셉은 아래와 같습니다. 1) IOC : 제어의 역전 / 의존성 주입 2) AOP : 관심의 분리 3) PSA : 일관성 있는 추상화그럼 실제로 어떻게 사용될까? IOC : 제어의 역전 / 의존성 주입 사용 예제 Bean은 IoC 컨테이너 안에 등록된 객체들을 의미 합니다. 모든 클래스의 객체가 Bean으로 등록되지 않습니다. @Repository, @Component, @Service, @Bean 등의 어노테이션을 통해서 Bean으로 등록 가능합니다. 사용 예로는 @Autowired 어노테이션을 이용해서 Bean을 주입할 수 있습니다. Bean 주입이 주는 이점은, 객체의 관리를 스프링 컨테이너가 하기에 개발자가 언제 빈을..
-
SpringBoot 프로젝트에서 Maven Build 시 profile 선택설치&설정 관련/Spring Framework 2021. 7. 1. 23:59
프로젝트 내에 여러 profile이 있을 경우 Mavne 빌드시 하나를 선택해야 합니다. Maven 프로젝트의 Root 디렉토리에서 다음 명령어로 packaging 을 하면 TEST 코드에 대하여 profile을 적용하게 됩니다. # dev profile을 사용하여 packaging 진행 ./mvnw clean package -Dspring.profiles.active=dev이후 결과 jar 파일을 실행시 profile을 설정하는 것도 동일 합니다. # dev profile을 사용하여 packaging 진행 java -jar -Dspring.profiles.active=dev result.jar
-
SpringBatch에서 Mutlti datasource 설정설치&설정 관련/Spring Framework 2021. 6. 25. 23:54
회사내에서 배치 작업을 잠시 하게 되었습니다. 오랜만에 자바를 사용해보는거라 재미있네요. 스프링 설정은 이젠 javaconfig 만으로 웬만한 설정은 다 할수 있습니다. 추가 정보 : 스프링 배치에 대한 문서는 토리맘님의 한글 라이즈 프로젝트에 한글로 번역된 문서가 있습니다. Spring Batch Introduction spring initializr를 활용한 프로젝트 생성 SpringBatch의 초기 프로젝트를 spring initializr에서 생성 합니다. 제가 준 옵션은 아래와 같습니다. Gradle을 사용하고, Jdk는 1.8을 지정하였습니다. Mysql은 Spring Batch의 Meta데이터를 저장하는 용도이며, H2 DB는 개발용으로, Oracle는 배치 데이터의 조회 & 적재용으로 사용..
-
SpringBoot에서 Websocket 사용하기설치&설정 관련/Spring Framework 2018. 10. 5. 16:53
SpringBoot에서 Websocket 사용하기Websocket 이란?서버와 클라이언트 사이에 양방향 통신 채널을 구축할 수 있는 통신 프로토콜이다. 동작 방식은 먼저 HTTP 통신을 연결하고 이후 Upgrade 헤더를 보내 양방향 연결로 업그레이드한다. Websocket은 최신 브라우저에서는 대부분 지원한다.전체 소스는 참고 내역에 있는 소스를 확인하면 된다.주요 설정은 다음과 같다.1. WebSocket Configurationpackage com.example.websocketdemo.config; import org.springframework.context.annotation.Configuration; import org.springframework.messaging.simp.config.Me..
-
Spring Controller 문서 만들기설치&설정 관련/Spring Framework 2017. 5. 18. 09:12
Spring Controller에 대하여 표 형식의 문서를 만들어 주는 프로그램입니다. Source 바로가기 기본 사항 JRE 1.8 이상이 설치되어 있어야 합니다.실행은 junit으로 GeneratorSpringControllerDoc.java 을 실행합니다.docx 형식의 샘플 템플릿은 resource 에 있습니다. 주요 기능* Spring Controller 에 연결 정보를 표 형식으로 표출 샘플 출력 결과