일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- terminal
- k8s #kubernetes #쿠버네티스
- pytest
- PytestPluginManager
- JanusGateway
- 오블완
- 개성국밥
- taint
- 깡돼후
- tolerated
- 헥사고날아키텍처 #육각형아키텍처 #유스케이스
- Spring Batch
- preemption #
- mp4fpsmod
- PersistenceContext
- table not found
- Value too long for column
- JanusWebRTCServer
- JanusWebRTC
- python
- JanusWebRTCGateway
- kotlin
- 코루틴 빌더
- vfr video
- 자원부족
- 티스토리챌린지
- VARCHAR (1)
- 달인막창
- 겨울 부산
- 코루틴 컨텍스트
목록개발/Spring Boot (32)
너와 나의 스토리
@ConfigurationProperties *.properties, *.yml과 같이 외부 속성을 바인딩하고 유효성을 검사할 수 있게 해주는 어노테이션. @ConfigurationProperties를 클래스에 추가하면, 해당 클래스는 외부 설정을 담는 용도로 사용되고, 이 설정 클래스를 @Configuration 클래스 내에서 @Bean으로 등록하면 스프링 컨테이너에서 해당 설정을 사용할 수 있다. 이 어노테이션을 사용하면 바인딩은 클래스의 setter 메서드를 호출하는 방식으로 수행된다. @ConstructorBinding 어노테이션을 추가하면 생성자 주입 방식으로 바인딩이 이루어진다. 외부 설정 파일에 정의한 이름대로 바인딩을 해주는데, 여러 표기법에 대해 자동으로 바인딩해준다. first_name..
다음으로 버전 올림 Spring Boot Version: 2.6.2 Spring Cloud Version: 2021.0.0 Gradle: 6.9 Spring Boot 2.6.2는 Gradle 6.x 이상을 지원 Gradle 버전 올리는 방법 gradle-wrapper.properties에서 distributionUrl 변경 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists 버전 확인 & 다운로드 ./g..
JPA Converter 사용법 Member라는 entity가 있고, member는 role을 가진다. role은 enum으로 선언되어 있는데, 디비에는 int형으로 member의 role을 저장하고, 불러올 때는 다신 MemberRoleType으로 가져오려고 한다. 1. ConvertibleEntity를 implements하여 member role을 매핑할 enum 객체를 만든다. @Getter public enum MemberRoleType implements ConvertibleEntity { Owner(1) { @Override public MemberRole asModel() { return MemberRole.Owner; } }, Member(2) { @Override public Member..
에러 메시지: Failed to start bean 'schedulerFactoryBean'; nested exception is org.springframework.scheduling.SchedulingException: Could not start Quartz Scheduler; nested exception is org.quartz.SchedulerConfigException: Failure occured during job recovery. [See nested exception: org.quartz.impl.jdbcjobstore.LockException: Failure obtaining db row lock: Table "QRTZ_LOCKS" not found; SQL statement: SE..
@Entity @Table(name = "user") public class UserEntity{ @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @Column(name = "name", nullable = false) private String name; @OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL, orphanRemoval = true) @JoinColumn(name = "user_id") private Set jobs; //... } @Entity @Table(name = "job") public class JobEntity { @Id @Generate..
Custom Error Response 보내는 방법 https://hororolol.tistory.com/649 [Spring] @ControllerAdvice를 이용하여 exception handling - Custom Error Response 보내기 & message를 포함한 error res Exception Handler Rest API로 받은 요청을 처리하다가 exception이 발생하는 경우가 있다. 이러한 exception들을 한 곳에서 처리하도록 ExceptionHandler를 만들어보자. @ControllerAdvice에 있는 메서드들은 모.. hororolol.tistory.com RestTemplate에서 다음과 같은 custom response로 응답이 온다고 하자. Respon..
Exception Handler Rest API로 받은 요청을 처리하다가 exception이 발생하는 경우가 있다. 이러한 exception들을 한 곳에서 처리하도록 ExceptionHandler를 만들어보자. @ControllerAdvice에 있는 메서드들은 모든 controller에 전역으로 적용된다. 어떤 controller에서 exception이 발생하던지 이 exception handler에 명시된 대로 response가 반환된다. @ControllerAdvice internal class DeviceExceptionHandler { @ResponseStatus(HttpStatus.NOT_FOUND) @ExceptionHandler(DeviceNotFoundException::class) fun..
RestTemplate Exception Handling 방법 [개발/Spring Boot] - [Java] RestTemplate 통신 error handling 하기 - 쉬운 방법 & ResponseErrorHandler 정의 통신 및 error handling 코드 RestTemplate으로 통신 및 Error handling @RequiredArgsConstructor public class RestApi { private final RestTemplate restTemplate; public User getUser() { restTemplate.setErrorHandler(new RestTemplateResponseErrorHandler()); try { ResponseEntity respons..