본문 바로가기

Spring/Spring Boot(스프링 부트)

(34)
Spring Boot Controller를 만들고 Test하기 spring boot 앱을 띄우고 controller를 테스트 해야 하는데 테스트 시나리오를 구성 해주어야 합니다. 그리고 spring boot는 db와 io 하는 코드가 많은데 이게 잘 되는지를 검증 해볼 필요가 있다. 과정 1. 특정 controller가 실행 되었을 때 해당 controller로 들어온 request body를 읽어서 다시 return해줍니다. 2. 만든 스프링부트 앱을 콜하면 스프링부트앱이 네이버에 콜을 보내서 받아온 값을 json으로 바꿔서 값을 뽑아서 3. pojo에 저장하고 그걸 repository를 이용해 db에 저장 build.gradle dependencies { implementation group: 'org.springframework.boot', name: 'sp..
spring boot logback 환경별(dev, qa, prod)설정, 끄는법 spring boot logback설정 https://dzone.com/articles/configuring-logback-with-spring-boot 참고함 로그 레벨 TRACE -> DEBUG -> INFO -> WARN -> ERROR ex) INFO로 해놓는 경우 DEBUG, TRACE레벨의 로그는 안보입니다. DEBUG로 해놓는 경우는 TRACE레벨의 로그는 안보입니다. 1.logback-spring.xml을 사용한다. %d{HH:mm:ss.SSS} [%thread] %-5level %logger{5} - %msg%n testFile.log true true %-4relative [%thread] %-5level %logger{35} - %msg%n 2.profile %d{HH:mm:ss.SS..
AWS Elastic Beanstalk용 Spring Boot 샘플 AWS Elastic Beanstalk용 Spring Boot 샘플 spring boot를 AWS EB에 배포할 때 신경 써줘야 할게 있는데 그것 때문에 시간을 보낸적이 많다. https://github.com/Kyeongrok/aws_eb_spring_sample Spring Boot initializer로 빌드 했고 spring boot actuator, spring boot web만 추가 했다. pom.xml설정 org.springframework.boot spring-boot-maven-plugin maven-war-plugin src/main/ebextensions .ebextensions true 위 설정을 추가 해주어야 한다. sample 20180629-0001 war 그리고 war 이것도..
aws eb에서 spring boot안뜰 때 aws eb에서 spring boot안뜰 때123456789101112131415161718import lombok.extern.slf4j.Slf4j;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;import org.springframework.cache.annotation.EnableCaching;import org.springframework.scheduling.annotation.EnableSc..
Spring Boot Scheduler Cron(크론) Spring Boot Scheduler Cron(크론) 스프링부트에서 특정 시간마다 반복되게 하고 싶다면 Cron(크론)을 사용합니다. 크론은 다음과 같이 * * * * * * 총 6자리로 이루어져 있습니다. 각 자리는 초, 분, 시, 일, 월, 요일 입니다. "0 0 * * * *" = the top of every hour of every day. "* * * * * *" = 매초 실행 합니다. "*/10 * * * * *" = 매 10초마다 실행한다. 0 */1 * * * = 매시간 실행 합니다. "0 0 8-10 * * *" = 매일 8, 9, 10시에 실행한다 "0 0 6,19 * * *" = 매일 오전 6시, 오후 7시에 실행한다. "0 0/30 8-10 * * *" = 8:00, 8:30, ..
spring boot 실시간 hot deploy하기 spring boot 실시간 hot deploy하기 https://stackoverflow.com/questions/23155244/spring-boot-hotswap-with-intellij-idehttps://dzone.com/articles/spring-boot-application-live-reload-hot-swap-with참고는 여기 스프링 프로젝트를 빌드하고 나서 hot deploy설정을 해주는데 기존에 하던 프로젝트면 설정을 이미 해놓아서 괜찮은데 실시간 반영 되게 핫 디플로이 설정을 하려면 자주 하는 설정이 아니라서 매번 찾아보아야 했다. 그래서 올려놓는다. 방법은1.spring-boot-devtools를 라이브러리에 추가한다.2.intelli j 에서 설정한다.3.ctrl + shift..
Spring Boot App gradle로 빌드 할 때 Manifest 에러 날 때 Spring Boot App Manifest 에러 날 때 에 기본 Manifest 속성이 없습니다. jar로 만들고 실행 할 때 이런 메세지가 나올때가 있습니다. 그때는 아래와 같이 넣어줍니다. jar { manifest { // 빌드시 Main-Class 설정 attributes 'Main-Class': 'com.example.solum_test.SolumTestApplication' } } bootJar { jar.enabled = true // 빌드시 jar 을 실행 } .jar이 만들어지는 기본 위치는 build/libs/ 아래 만들어집니다. 그래도 안되면 task deployJarToProduction(dependsOn: jar) { doLast{ upload_jar_to_server(jar, ..
spring boot 콘솔에 배너 안나오게 하기 spring boot 콘솔에 배너 안나오게 하기 spring.main.banner-mode=off