본문 바로가기

Spring5

RestTemplate 사용하기 Springboot에서 RestAPI를 호출할 때, RestTemplate을 사용하여 호출할 수 있다. 사용할때마다 건건이 만들어봐도 되는데.. 더 쉽게 사용할 수 있는 방법이 있었다.. 난 maven기준으로 개발하니까.. 우선 maven 기준으로만 작성한다. (아직 넘나들정도 수준은 아니에요..) 1. pom.xml에 의존성 추가 org.springframework.boot spring-boot-starter-web 별다른건 없고.. spring-boot-starter-web을 추가하자. 2. Configuration설정. 이거 하나 Bean으로 해두면.. @Autowired 애노테이션을 사용하여 쉽게(? 더쉽게) 사용할 수 있다. @Configuration public class RestTemplat.. 2022. 7. 26.
Springboot Servlet실행 시 추가할 것. 자바 Springboot로 API서비스를 만들었다. 배포형식은 jar로. 근데 구동이 안되더라.. 알고보니 서블릿초기화가 필요하다네? API를 사용할 모듈에서.. ServletInitializer를 추가한다. import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; public class ServletInitializer extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringA.. 2022. 7. 15.
Multi module빌드 시 output 경로 변경(Maven Project) 이번에 서비스를 만들어보면서, (기 서비스중인 녀석을 나중에 FE와 BE로 분리해보고싶어 개인적으로 프로젝트 시작.) 여러 프로젝트들로 쪼개보기 시작했다. 기능들을 개별적인 서비스로 만들면 나중에 편리하잖아? (MSA...) Maven으로 Output디렉토리를 변경해서.. 각 모듈의 산출물 경로를 root\target으로 모아보는게 이번 스터디 목적. 현재 프로젝트 구조는 이렇다. 지금은 아주 심플하다. db에서 데이터를 조회해오는 기능만 먼저 분리해서.. 이걸 output target을 모으고, 그리고 그걸 그대로 docker에 넣어서 배포가능한지 확인하는게 목적이니까. 위에거 되면 이제 기능들 하나하나 붙여나가야지. 그 전에 먼저 docker에 같이 말아넣는것이 가능한지 feasibility를 확인하.. 2022. 7. 8.
Maven project - pom.xml (1) 메이븐으로 프로젝트를 만들면, pom.xml이 생성되고, 여기에서 정말 많은걸 한다는걸 느낀다..;; 내가 나중에 까먹지 않기 위해 여기에 한번 정리. 전체적인 pom.xml 4.0.0 그룹ID Artifact ID 패키징타입. (ex. war, jar) 이름 부모ArtifactId 그룹ID ${DependencyInfo} 값 ${Plugin Information} ${Dependency info} dependencyManagement의 경우 user library에 대해 정의하는것 같은데 좀 더 확인해보아야겠다. 메이븐 플러그인은 필요한 라이브러리를 어떻게 참조할지 설정하는 것 같은데.. 이건 좀 더 공부하고 글을 써야겠다.. 2022. 6. 28.
Spring Scheduler 사용하기 Spring에서 Scheduler를 이용하면, 아주 간단히(?) 일정 시간 간격으로 실행되는 job을 만들 수 있다. Quartz를 사용하면 더 좋을 것 같은데, 우선 나는 이제 막 시작하는 단계이므로, spring scheduler사용하는걸로. 1. @EnableScheduling 애노테이션 추가. Applicaion.java에 위 애노테이션 추가하고, 2. Scheduler Task를 수행할 클래스에 애노테이션 추가하기 Class에는 @Component 애노테이션을, 그리고 일정 간격으로 실행 될, 메소드에는 @Scheduled 애노테이션을 붙이면 된다. 나는 테스트용으로 5초간격으로 실행시킬 것이었으므로, fixedDelay = 5000으로. 일정 시각에 반복적으로 실행하고싶을 땐, cron으로 하.. 2022. 6. 21.
728x90