전체 글

안녕하세요. PS풀이, 개발일지 및 일기, 소소한 이야기를 적어가는 윤재 입니다.
· TIL ✍️
문제 : 카프카 직렬화/역직렬화 처리 중 만난 에러들 하도 많이 만나서 일단 생각나는 것만 적고..    에러 1 : 객체로 요청 및 응답받고 싶으면 Value의 시리얼라이저를 Json으로 하기.물론 문자열로도 가능하긴 한데, 요청/응답마다 ObjectMapper로 직렬화/역직렬화하기보다, 카프카에서도 JsonSerializer를 제공해 주는데 굳이 문자열로 쓸 필요는 없을 것 같다. 또 컴파일 때 요청 보낼 객체의 타입검사를 해주기도 하고.  import ex.application.order.message.DeliveryMessage;import java.util.Map;import org.apache.kafka.clients.producer.ProducerConfig;import org.apache...
· TIL ✍️
값객체를 엔티티의 식별자에도 사용하기 시작했다.  @Getter@Embeddable@EqualsAndHashCode@NoArgsConstructor(access = AccessLevel.PROTECTED)public class HubId implements Serializable { // JPA 식별자 타입은 Serializable 구현해야 함 @Column(name = "id") private UUID id; public static HubId of(UUID id) { HubId hubId = new HubId(); hubId.id = id; return hubId; } public static HubId ofRandom() { ..
· TIL ✍️
이번 프로젝트에서 DDD 개념을 일부 도입해 보면서 값객체를 시도해 볼 수 있는 부분에 적용을 해보았다. 인터넷에 유명한 Money나 Address는 당연히 구현해봤고, 아래는 그 외에 잘 구현했다고 생각되는 것을 적어봤다. @Getter@Embeddable@EqualsAndHashCode@NoArgsConstructor(access = AccessLevel.PROTECTED)public class Rating { private static final int MIN_SCORE = 1; private static final int MAX_SCORE = 5; private Integer score; public Rating(int score) { if (!isScoreInR..
총 정리 팀 노션 페이지 링크 API 명세서  팀 노션에서 확인 부탁드립니다테이블 상단에 각 도메인 별 필터링을 해두어서 나눠서 보시면 보기 편할 것 같습니다!테이블 명세서 유저(p_user)필드 이름 데이터 타입 설명usernameVARCHAR(100)사용자 ID, pknicknameVARCHAR(100)사용자 닉네임emailVARCHAR(255)사용자 이메일, UniquephoneVARCHAR(100)사용자 연락처passwordVARCHAR(255)사용자 비밀번호addressVARCHAR(100)사용자 주소zipcodeVARCHAR(100)사용자 우편번호roleVARCHAR(10)사용자 역할 (COMPANY, DELIVER, MANAGER, MASTER)   created_atTIMESTAMP레코드 ..
· TIL ✍️
문제 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..
· TIL ✍️
문제 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 단위로 설정해주어 해결했다.
· TIL ✍️
문제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..
· TIL ✍️
// 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..
yunjae62
윤재의 개발 블로그