문제 Review 엔티티에 기본형 boolean 타입의 isReported 필드가 있었는데, 이를 DTO로 변환하는 mapStruct 매퍼를 사용 중, 컴파일 시 아래와 같은 경고가 떴다. // ReviewMapper.class// ...import org.mapstruct.Mapper;import org.mapstruct.Mapping;import static org.mapstruct.MappingConstants.ComponentModel.SPRING;@Mapper(componentModel = SPRING)public interface ReviewMapper { ReviewResponseDto toReviewResponseDto(Review review);}// ReviewResponseDto..
TIL ✍️
상황MSA 1차 과제의 답안이 공개되어 보던 중 기존의 강의와 해설 영상에서도 다루지 않았던 코드를 발견했다.// ServletInitializer.classimport org.springframework.boot.builder.SpringApplicationBuilder;import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;public class ServletInitializer extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder builder..
문제 ubuntu:~$ sudo docker logs redis*** FATAL CONFIG FILE ERROR (Redis 7.4.0) ***Reading the configuration file, at line 1133>>> 'maxmemory 1.5gb'argument must be a memory valuemaxmemory 설정을 소숫점으로 하니 실행이 되지 않았다. 해결 // redis.confmaxmemory 1500mb// ...MB 단위로 설정해주어 해결했다.
문제EBS 용량을 늘려주었음에도 EC2에서는 적용 안 됨.상황도커 이미지들 이것저것 다 다운받다보니 EBS 8GB 설정해둔 게 99% 사용 중ubuntu@ip:~$ df -hFilesystem Size Used Avail Use% Mounted on/dev/root 6.8G 6.7G 93M 99% /tmpfs 208M 0 208M 0% /dev/shmtmpfs 83M 1.4M 82M 2% /runtmpfs 5.0M 0 5.0M 0% /run/lockefivarfs 128K 3.3K 125K 3% /sys/firmware/efi/efivars/dev/nvme0..
// application.ymlspring: application: name: ymlserver: port: 8088fruit: list: - name: banana color: yellow - name: apple color: reddeveloper: name: yunjaeapplication.yml // application-dev.ymlserver: port: 8055application-dev.yml // DeveloperName.class import lombok.Data;import org.springframework.boot.context.properties.ConfigurationProperties;import org.springframewor..
문제import org.springframework.http.HttpMethod;public class CorsConstant { public static final String[] ALLOWED_ORIGINS = { "http://localhost:3000" }; public static final String[] ALLOWED_METHODS = { HttpMethod.GET.name(), HttpMethod.POST.name(), HttpMethod.PUT.name(), HttpMethod.DELETE.name(), HttpMethod.OPTIONS.name() ..
문제과거 프로젝트에서 JWT을 이용한 인증 방식을 택해서, 액세스 토큰 및 리프레쉬 토큰을 커스텀 응답 헤더에 넣어서 보내주었다. 하지만 프론트에서 응답 헤더에서 받아올 수 없었다. 해결기본적으로, 응답 헤더는 CORS-safelisted response header 만 노출된다. (simple response header 라고도 한다) CORS-safelisted response header란, 클라이언트의 스크립트에 노출되어도 안전하다고 여겨지는 헤더들이다. 기본적으로 아래와 같은 헤더들이 있다. Cache-ControlContent-LanguageContent-LengthContent-TypeExpiresLast-ModifiedPragma 이 외의 헤더들은 Access-Control-Expose-H..
의존성 목록 dependencies { implementation 'org.springframework.boot:spring-boot-starter-web' compileOnly 'org.projectlombok:lombok' annotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' testRuntimeOnly 'org.junit.platform:junit-platform-launcher'}의존성이 web, lombok 밖에 없다. 전역 설정 import org.springframework.context.annotat..
문제 스프링 부트에서 Record 클래스로 application.yml 파일 값 가져오려다가 에러가 났다. 상황// application.yml fruit: list: - name: banana color: yellow - name: apple color: red yml 파일에 fruit.list 속에 과일 리스트가 있는 형태를 스프링에서 가져다 쓰려고 했다. // Fruit.classpublic record Fruit( String name, String color) {} // FruitList.classimport org.springframework.boot.context.properties.ConfigurationProperties;impor..