전체글 224

22.09.19 (월) 50일 차

오늘 한 것 [DB] Transaction 강의 + 블로그 정리 [팀] api 명세서 / 기능 나누기! [팀] erd 만들기 [팀] 초기 환경설정 오늘 배운 것 2022.09.19 - [DB] - [DB] Transaction - Atomicity 원자성 이해하기 2022.09.20 - [DB] - [DB] Transaction - 동시성 문제 내일 할 것 [DB] SQL Join + 블로그 정리 [개인] 좋아요 토글 추가 [개인] OAuth2.0 (카카오) 소셜로그인 [팀] 모임 기본 CRUD 지난 토요일은 저녁에 공연을 보러갔고 일요일은 쉬었다.... (DB 강의를 조금 봤다) DB 중에서도 트랜잭션은 개념만 알면 되겠다고 생각했는데 아니었다.. 다시 공부하라길래 찾아보니 정말 더 어려운게 나왔다. ..

[DB] Transaction - 동시성 문제

2022.09.10 - [DB] - [DB] 트랜잭션 Transaction 이란? [DB] 트랜잭션 Transaction 이란? 트랜잭션 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산들 => 데이터베이스의 상태를 변화시킨다는 것? wearegolden.tistory.com 2022.09.19 - [DB] - [DB] Transaction - Atomicity 원자성 이해하기

[DB] Transaction - Atomicity 원자성 이해하기

2022.09.10 - [DB] - [DB] 트랜잭션 Transaction 이란? [DB] 트랜잭션 Transaction 이란? 트랜잭션 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산들 => 데이터베이스의 상태를 변화시킨다는 것? wearegolden.tistory.com 참고 강의 https://www.youtube.com/watch?v=urpF7jwVNWs&t=0s 트랜잭션이 무엇인지 알았다면 왜 쓰는지, 왜 중요한지 알아야한다. Transaction 트랜잭션 여러 읽기/ 쓰기를 논리적으로 하나로 묶음 트랜잭션 시작 - 여러 쿼리 실행 - 커밋 or 롤백 모두 반영 (커밋) 또는 모두 반영하지 않음 (롤백) = All o..

22.09.16 (금) 47일 차

오늘 한 것 6주간 함께할 최종 프로젝트 시작! => 기획 / SA작성 / 와이어프레임 [생활코딩] 관계형 데이터 모델링 블로그 정리하기 [DB] Index 강의 + 블로그 정리 오늘 배운 것 2022.09.16 - [DB/RDBMS] - [RDBMS] 관계형 데이터 모델링 2 2022.09.17 - [DB] - [DB] Index https://www.notion.so/1-95d525cc0f034f2ebd5279db9e48cfff 내일 할 것 [DB] Transaction 강의 + 블로그 정리 [개인] 이미지 업로드 기능 추가해보기 [인프런] Spring 입문 강의 [9/15 TIL 피드백 by 채멘] 금액 부분을 백에서 계산해서 넘겨주는 걸 나 혼자 생각해서 만들어서 넘겼는데 그 부분은 프론트에서도 ..

[DB] Index

참고한 강의 더보기 https://www.youtube.com/watch?v=edpYzFgHbqs https://choicode.tistory.com/27 [DB] 데이터베이스(DB) 인덱스(Index) 란 무엇인가? 들어가면서.. DB를 사용하면서 데이터의 양(row)에 따라 실행 결과의 속도가 차이가 나는 것을 알고 있었다. 특히 데이터의 양이 증가할수록 실행 속도는 느려지고, JOIN이나 서브 쿼리 사용 시 곱 choicode.tistory.com Index란? 색인 쉽게 찾아 볼수 있도록 일정한 순서에 따라 놓은 목록 > 원하는 값을 빠르게 찾는다! 👉SELECT에 활용 가능! Database Index 대용량데이터에서 조회를 할때 순차적으로 확인을 하면 매우 느림 (기준없이 되어있기때문) 데이터..

[RDBMS] 관계형 데이터 모델링 2

참고한 강의 더보기 https://opentutorials.org/course/3883 논리적 데이터 모델링 : ERD를 관계형 데이터베이스 모델에 어울리게 변환하는 과정 => Mapping rule을 중점으로 보면 됨 논리적 데이터 모델링 개념적 모델링이 잘 되어있다면 기계적으로 하면되기 때문에 상대적으로 쉬움! 뽑아낸 개념을 관계형 패러다임에 어울리는 이상적인 모습으로 정리해 주는 것 Mapping Rule erd로 표현한 내용을 관계형 데이터베이스에 맞는 형식으로 전환할때 사용하는 방법론 Entity -> Table Attribute -> column Relation ->PK,FK 일대일 관계 외래키 설정 의존하는 테이블(혼자서 잘 못지냄) : 자식 (외래키) => 휴면저자 (외래키 : author..

22.09.15 (목) 46일 차

오늘 한 것 [팀과제] 장바구니 CRUD + Response 리팩토링 정리하기 [팀과제] 무사히 배포하고 발표하기.. [생활코딩] 관계형 데이터 모델링 완강 [팀과제] 팀원들과 코드리뷰 해보기! 오늘 배운 것 http://ikea-clonecoding.s3-website.ap-northeast-2.amazonaws.com/ 2022.09.15 - [SPRING/🌱연습[SPRING]] - [SPRING] 클론코딩 장바구니 로직 만들기 내일 할 것 6주간 함께할 최종 프로젝트 시작! [생활코딩] 관계형 데이터 모델링 블로그 정리하기 [생활코딩] Mysql 강의 한번 봐보기 (가볍게?) [인프런] Spring 입문강의 보기 개념정리하기.. 클론코딩 주차가 끝났다! 저번 주와는 다르게 무사히 배포도 하고 ppt..

[SPRING] 클론코딩 장바구니 로직 만들기

이번 프로젝트는 IKEA 클론 코딩이었다. 일주일이라는 시간동안 해내는거라 스코프는 최대한 작게 했다. 그 중에 나는 장바구니 .. 뭔가 특별하게 어려운가? 싶어서 인터넷에서 레퍼코드를 찾아보겠다고 하루를 할애했다.. 실제로 찾기는 했으나 원래 하던 방식이 아니라서 또 멘붕....... 결국에는 그냥 알던대로 하기로 했다 ..^^ㅋㅋㅎ 1. Entity 설정 기획 시 ERD를 설계했던대로 엔티티를 설정해준다. @Getter @NoArgsConstructor @AllArgsConstructor @Entity public class Cart extends Timestamped{ @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; ..

22.09.14 (화) 45일 차

오늘 한 것 [팀과제] 크롤링 부분 합쳐서 테스트 + Dev 머지 [팀과제] 장바구니 전체 조회 Response 변경하기 Swagger 설정해보기 trouble shooting 작성하기 (git issue) 개념 정리하기 [생활코딩] 관계 데이터 모델링 (~논리적 데이터 모델링1) 오늘 배운 것 http://13.209.88.134/swagger-ui/index.html# https://github.com/IKEAcloneCording/cloneCoding-BE/issues/21 2022.09.14 - [SPRING] - [SPRING] Service 와 ServiceImpl 2022.09.14 - [JAVA] - [JAVA] BigDecimal 과 사칙연산 2022.09.15 - [전체글] - [Swa..

[JAVA] BigDecimal 과 사칙연산

이케아 클론코딩 프로젝트에서 장바구니 파트를 맡았다. 필연적으로 돈 계산이 들어가는 부분인데 이때 배송비 / 총 금액 등을 그냥 int로 사용하면 안되고 BigDecimal을 사용해야한다고 알게되었다. BigDecimal 이란? Java 언어에서 숫자를 정밀하게 저장하고 표현할 수 있는 유일한 방법 double : 소수점을 저장할 수 있고 크키가 가장 큰 타입. 소수점의 정밀도에 있어 한계 Java 언어에서 돈과 소수점을 다운다면 BigDecimal은 필수 단점은 느린 속도와 기본 타입보다 불편한 사용법.. BigDecimal 기본상수 자주 쓰는 0, 1, 100은 쓰기 편하게 미리 상수로 정의되어 있음 // 흔히 쓰이는 값은 상수로 정의 // 0 BigDecimal.ZERO // 1 BigDecimal..

[SPRING] Service 와 ServiceImpl

처음 Spring을 배울때부터 채멘에게 배웠던 방식은 Service Interface를 두고 Service 구현체를 따로 두는 방식이었다. 그래서 팀과제를 할때에도 혼자서 꿋꿋이(?) 이 방식을 고수해오고 있었는데 최근 멘토링 중 매니저님께서 ' 이 방식을 사용할 때에 장점은?' ' 하나의 서비스 interface에서 2개 이상의 구현체가 필요할 경우 어떻게 할 것인가?' 하는 질문에서 제대로 대답을 하지 못하였다. 그리고 다른 팀원들도 '왜' 사용하는 지에 대해 물어보는데 그저 어렴풋이 대답할 뿐 확실한 답을 해내지 못하여서 이번 기회에 개념을 다 잡고자 한다. 관습적인 추상화 왜 Service Interface 와 Service Impl Class를 따로 사용하는가? 👀장점 인터페이스와 구현체의 분리..

22.09.13 (화) 44일 차

오늘 한 것 [팀과제] 장바구니 crud + 회원가입 / 로그인 합쳐서 테스트 + 에러 수정 + 에러노트 작성 [생활코딩] 관계 데이터 모델링 (~개념적 데이터 모델링) + 블로그 정리 오늘 배운 것 2022.09.13 - [SPRING/🚨에러노트[SPRING]] - [220913] UserDetails = null 에러 2022.09.13 - [SPRING/🚨에러노트[SPRING]] - [220913] not-null property references a null or transient value 에러 2022.09.13 - [SPRING/🚨에러노트[SPRING]] - [220913] The given id must not be null! 에러 2022.09.13 - [SPRING/🚨에러노트[SPRI..

[RDBMS] 관계형 데이터 모델링 1

더보기 - 참고한 강의 더보기 참고한 강의 https://opentutorials.org/course/3883 관계형 데이터 모델링 - 생활코딩 수업소개 관계형 데이터베이스의 테이블을 설계하는 방법을 알려드리는 수업입니다. 이 수업은 아래와 같은 내용을 담고 있습니다. 데이터 모델링의 효용 업무파악 개념적 데이터 모델링 논 opentutorials.org 데이터 모델링 이란? 문제를 현실로부터 뜯어내서 고도의 추상화 과정을 통해 컴퓨터라는 새로운 현실로 옮긴것 데이터 모델링의 순서 업무파악 개념적 데이터 모델링 - 어떠한 개념들이 서로 어떻게 상호작용하는가 논리적 데이터 모델링 - 표로 만들기 (erd) 물리적 데이터 모델링 - 어떤 걸 사용할 것인가 업무파악 ui를 직접 같이 그려보기! 말의 기능을 불..

[220913] JPA delete 관련 에러 (Cascade 영속성 전이 관련 에러)

문제상황 여전히 삭제 시 에러.. 연관관계 관련 에러인것 같다.. 외래키가 설정이 되어 있어서 같이 삭제가 안된다 연관관계 @OneToMany 인 부분에 cascade 연관관계 및 orphanRemoval 설정도 다 되어있었는데... 해결방법 https://cantcoding.tistory.com/75 JPA delete관련 에러 (Cascade 영속성 전이 관련 에러) 문제점: Review 엔티티에 대해서 테스트 코드를 작성하던중 모두 성공했지만 엔티티 삭제 테스트에서 엔티티를 삭제해도 삭제되지 않는 상황을 마주쳤다. 리뷰 엔티티는 간단하게 다음과 같은 연 cantcoding.tistory.com 부모 객체에도 연관관계로 같이 삭제하라고 넣어버렸다... (이럼 안됨) cascade 삭제 해주니 완료메세..

🚨에러노트 2022.09.13