inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

역할 및 발생 시점에 따른 엔티티 분류

미해결

김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복

역할 및 발생 시점에 따른 엔티티 분류를 설명하는 파트에서 궁금한 점이 있습니다. 지난 강의까지 주문 엔티티는 사건 발생의 결과물(즉, 주문 이력)이 기록되는 엔티티라고 이해했었는데요. "엔티티 분류1" 강의에서는 기본, 중심, 행위 엔티티 로 나눠서 생각해볼 수 있다고 했습니다. 그때 중심 엔티티 에서도 예시가 주문 으로 나와있고, 행위 엔티티 에서도 주문 이력 으로 나와 있는데, 이 두 개가 다른 경우인가요? 중심 엔티티의 주문 과 행위 엔티티의 차이 가 무엇인가요? 감사합니다.

  • sql
  • mysql
  • dbms/rdbms
  • 소프트웨어-설계
  • SQLD
Gyuri Kim 댓글 1 좋아요 0 조회수 108

spotbug + @NonNullApi 로만 Null 방어가 될까요?

미해결

토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1

안녕하세요, nullable 프라퍼티가 없다면 null를 방어하는 방식에 대해 궁금한 점이 있어 질문남깁니다. 14. Member 도메인 로직 개발 - 생성자에 requireNonNull() 사용 15. 스프링을 이용한 널(null) 안정성 확보 - SpitBugs 플러그인 - package-info 에서 @NonNullApi 이렇게 세가지 방법을 배웠는데요, SpitBugs 플러그인이 "빌드과정에서 정적 분석을 하여 애노테이션 의미와 부합하지 않으면 에러를 내준다" 라는 말씀에 " 그럼 도메인에 Nullable 프라퍼티가 없으면 requireNonNull() 사용 없이 단순히 @NonNullApi + SpotBug만 사용해도 되지 않을까..? " 의문이 들었습니다. 3가지 모두 사용하는게 Null 방어에 괜찮을까요? 아니면 제가 이해한 대로 SpotBug 플러그인 + @NonNullApi 로만 사용해도 충분할까요?

  • java
  • spring
  • spring-boot
eunseo lay 댓글 2 좋아요 0 조회수 168

rollup시 null값 매출 라벨링

미해결

데이터 분석 SQL Fundamentals

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. select coalesce ( to_char ( b . order_date , 'yyyy' ), '총매출' ) as year , coalesce ( to_char ( b . order_date , 'mm' ), '연매출' ) as month , coalesce ( to_char ( b . order_date , 'dd' ), '월매출' ) as day , sum ( a . amount ) as sum_amount from nw . order_items a join nw . orders b on a . order_id = b . order_id group by rollup ( to_char ( b . order_date , 'yyyy' ), to_char ( b . order_date , 'mm' ), to_char ( b . order_date , 'dd' )) order by 1 , 2 , 3 ; case when 안쓰고 coalesce 해도 괜찮을것 같아요!

  • sql
  • postgresql
  • dbms/rdbms
  • 데이터-엔지니어링
mewpotofficial 댓글 2 좋아요 0 조회수 92

typedef 질문

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

5:50 제일 위에 선언 부분에 Bag이 typedef으로 데이터타입으로 정의한건지 struct 의 변수명으로 정의한건지 헷갈립니다 저렇게 하나만 쓰면 둘다 인가요?

  • python
  • java
  • c
  • 정보처리기사
댓글 2 좋아요 0 조회수 59

NOT NULL과 DEFAULT 조건의 사용법

미해결

김영한의 실전 데이터베이스 입문 - 모든 IT인을 위한 SQL 첫걸음(SQL부터 차근차근)

강의에서 stock_quantity 칼럼의 제약 조건으로 다음과 같은 구문을 작성하였는데, stock_quantity INT NOT NULL DEFAULT 0 해당 구문에서 NOT NULL 제약조건을 두지 않더라도 DEFAULT 0만 작성하여도 충분히 해당 칼럼이 NULL값이 되는 걸 방지할 수 있으리라 생각이 되어서요. NOT NULL 제약조건을 반드시 작성해야하는 걸까요? 아니면 개발자의 코드 작성 의도를 더 명확히 하고자 작성하는 걸까요?

  • sql
  • mysql
  • dbms/rdbms
  • SQLD
강민정 댓글 1 좋아요 0 조회수 169

도메인 및 dbcore 패키지 구조 질문있습니다

해결됨

제미니의 개발실무 - 커머스 백엔드 기본편

안녕하세요, 강의 보기 전 소스코드부터 보고 있는데 패키지 구조에 궁금증이 생겨 질문드립니다. 현재 domain 및 db core 패키지 하위에 도메인별 세부 패키지 분리 없이 모든 파일이 배치되어 있는데요, 추후 프로젝트 규모가 커져 파일 개수가 수백, 수천 개에 달하게 될 경우에도 이러한 구조(패키지 미분리)를 유지하시는 것을 선호하시는지 궁금합니다. 감사합니다.

  • kotlin
  • spring-boot
  • 도메인
  • dbms/rdbms
  • backend
최민호 댓글 2 좋아요 1 조회수 144

강의자료중 github 자료

해결됨

스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판

학습 관련 질문을 최대한 상세히 남겨주세요! 고민 과정도 같이 나열해주셔도 좋습니다. 먼저 유사한 질문이 있었는지 검색해보세요. 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 혹시 github 자료도 받아볼 수 있나요?

  • java
  • mysql
  • spring-boot
  • kafka
  • redis
쭈도리 댓글 2 좋아요 0 조회수 81

consumer가 topic을 전부 사용하기 전에 사용자에게는 쿠폰이 발급된것으로 확인하는 과정에서 발생가능한 문제.

미해결

실습으로 배우는 선착순 이벤트 시스템

운영중인 서비스에서 선착순 100명 이벤트를 적용한다고 가정하겠습니다. redis를 통해 100명을 제한했고, kafka를 적용하여 부하를 줄여주는 것은 까지는 이해했습니다. 부하를 줄이는 방법이 kafka를 적용할때 때 provider가 topic을 생성하고 consumer가 topic을 가져와서 DB에 입력하는 작업을 하는 것으로 이해했는데요. 만약 이게 실제 운영 환경이라고 가정했을때 궁금한것은 다음과 같습니다. 사용자가 이벤트 신청 redis에서 쿠폰 생성 수량 확인 결과 생성 가능한 조건 임으로 새로운 쿠폰 발급 provider가 새로운 토픽을 생성 토픽을 생성한 그 순간 바로 직후, 사용자는 새로운 쿠폰이 발급된 것으로 확인 해야함. 그치만 consumer에서 topic을 가져오기 전으로 DB에는 새로운 쿠폰이 생성되지 않음. 쿠폰을 사용(또는 확인) 하려고 DB에서 select해보니 쿠폰이 없음 consumer가 이제서야 쿠폰 생성 이 경우에서 보는 것과 같이. provider가 topic을 생성하고 consumer가 topic을 가져와서 DB에 넣는 과정 사이에 사용자가 select를 진행하는 케이스가 있을것같습니다. 이 부분은 어떻게 해결할 수 있을까요? 혹시 다음과 같이 해결 할 수 있을까요? provider가 topic을 생성하는 과정에서 발급 내역을 redis에 입력 consumer가 모든 토픽을 전부 사용하여 DB에 입력하기 전까지 redis에 입력되어 있는 쿠폰 정보로 사용자에게 보여줌 consumer가 모든 토픽을 사용했을때(= 생성된 모든 쿠폰정보를 DB에 입력했을때) redis에 있는 쿠폰정보는 삭제하고 DB에서 select해서 보여줌. 궁금합니다.

  • java
  • docker
  • spring-boot
  • kafka
  • redis
황준성 댓글 1 좋아요 0 조회수 102

문제 풀이 해설 요청

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

ASCII 코드 챕터 18:12 printf(%s\n", p+1) printf(%c\n", *(p+1)) printf(%s\n", *p+4) 위 3가지 경우에 대해서 해설 부탁드립니다. 1번 경우 KOREA에서 한칸 오른쪽으로 이동하여 OREA되는 것은 이해가 되고 2번 경우 *p가 K를 가르키기에 +3하면 E가 되는 것도 이해되고 3번 경우에는 1번과 2번을 바탕으로 이론을 숙지하고 있는상황에서 이해가 되지 않습니다.

  • python
  • java
  • c
  • 정보처리기사
dhkdxo12 댓글 2 좋아요 0 조회수 55

삭제 기능 구현에 대한 질문입니다.

해결됨

제미니의 개발실무 - 커머스 백엔드 기본편

안녕하세요. 오늘도 재미있게 잘봤습니다. 감사합니다. // ReviewManager.kt @Transactional fun delete(user: User, reviewId: Long): Long { val found = reviewRepository.findByIdAndUserId(reviewId, user.id) ?: throw CoreException(ErrorType.NOT_FOUND_DATA) found.delete() return found.id } 이 코드를 보면서 삭제를 구현할 때 두 가지 방식이 있겠다는 생각이 들었습니다. 첫번째는 조회 + 삭제, 두번째는 정확한 key를 넘겨주어서 한번에 삭제. 둘 가운데 어떤 방식을 선호하시는지 궁금합니다. 처음에는 두 번째 방식으로 구현을 한다면 메서드 이름과 동작이 더 일치해서 좋고 코드도 한 줄에 끝나서 더 좋은게 아닌가? 라고 생각을 했었는데 그렇다면 첫번째 방식을 하면 좋은점이 무엇일까 다시 생각을 해보니 만약 삭제할 때 ORM 예외가 발생한다면 ReviewManager가 몰라도 된다는게 장점일 수 있겠다는 생각이 들었습니다.

  • kotlin
  • spring-boot
  • 도메인
  • dbms/rdbms
  • backend
비비비비빅 댓글 1 좋아요 1 조회수 69

confirm 로직에서 amount를 검증하는 부분에서 질문이 있습니다.

미해결

견고한 결제 시스템 구축

현재는 클라이언트에서 넘어온 amount를 검증하고 있는데 이는 조작 위험이 있지 않은지 궁금합니다. 예를 들어 1원만 결제하고 서버에는 10000원을 결제했다고 보내면 서버에서는 결제 승인 API를 호출하여 totalAmount를 확인하기 전까지는 알 수 없는걸까요? 결제 승인 API에서 반환되는 Paymet 객체에 totalAmount 필드가 있기는 하지만 결제를 승인하기 전에 toss 서버에서 실제 결제된 금액을 조회하는 방법이 따로 없는건지 궁금합니다

  • spring
  • spring-boot
  • dbms/rdbms
  • backend
  • payments
김정환 댓글 1 좋아요 0 조회수 83

findSections 메서드 위치에 관련하여 질문 드립니다

해결됨

제미니의 개발실무 - 커머스 백엔드 기본편

강의를 듣고 재민 님이 말씀해주신대로 코드를 옮겨 봤는데요. ProductFinder에 findSections 메서드가 있지 않고 ProductSectionService에서 ProductSectionRepository를 통해 바로 조회하는 것도 꽤 자연스럽고 괜찮다고 느껴졌습니다. 그런데 여기서 궁금한게 있습니다. Product 관련한 건 ProductFinder 라는 별도의 객체가 책임을 갖게 해서 코드를 짜다가, ProductSection에서 갑자기 바로 Repository에 접근해서 조회를 하도록 하면 코드 통일성 측면에서 바람직한가? 하는 의문이 문득 들더라구요. 그렇다고 ProductSectionFinder를 또 만들어서 하자니 너무 과한가? 싶은 생각도 들었습니다. 추가로 ProductSection 조회에 다른 요구사항이 생기거나, 복잡한 구현을 해야 된다면 ProductSectionFinder 같은 걸 만들어도 좋을 것 같은데, 현재 시점에서 만드는 것이 좋은 접근인지 확신이 안 생긴달까요 ㅎ 만약 이런 고민이 들 때는 어떤 것에 우선순위를 두어서 결정하는 것이 좋을 지 재민 님의 의견이 궁금합니다. 좀 더 자연스러운 흐름대로 짜는 것이 나을지, 혹은 코드 통일성 유지를 위해서 바로 Repository에 접근하는 것은 지양 하면 좋을지 등등 말이죠! 이건 회사나 팀마다 정해진 규칙이 있을 가능성이 높지만 공부하는 입장에서 궁금증이 들어 이렇게 질문을 드립니다. 감사합니다 😀

  • kotlin
  • spring-boot
  • 도메인
  • dbms/rdbms
  • backend
비가싫어요 댓글 1 좋아요 1 조회수 167

어떻게 준비하면 좋을까요?

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

2주정도 남은 시점에서 언어 관한 강의는 다 봤고 전년 주차들 풀이해주는거 보고 있는데 남은 기간을 어떻게 준비하면 좋을까요? 실패경험이 있으니 엄청 불안한데 어떻게 하는게 좋을까요?

  • python
  • java
  • c
  • 정보처리기사
노래하고춤추는 1호 댓글 2 좋아요 0 조회수 81

쿠폰 관련 부분에서 질문있습니다.

해결됨

제미니의 개발실무 - 커머스 백엔드 기본편

쿠폰 챕터 부분에서 "코드 느끼기" 강의의 7~8분대에 CouponController 부분에 getOwnedCoupons 에 대해 강의에서는 "내가 받을 수 있는 쿠폰 목록 전체를 내려준다"고 말씀하셨습니다. 그런데 제가 이해하기로는 "다운로드 받은 쿠폰(들)을 전체 조회한다"로 생각했습니다. 그 이유는 download(다운로드)를 해야만 ownedCoupon 엔티티로부터 데이터를 가져오기 때문입니다. 혹시 제가 이해한 것처럼 getOwnedCoupons 의 역할이 "내가 받을 수 있는 쿠폰을 조회한다"가 아닌 "다운로드 받고 난 쿠폰을 조회한다"와 같은 API인지, 혹은 그게 아니라면 무슨 의미인지 알려주시면 감사하겠습니다! 강의 내용을 듣다보면, "다운로드 받을 수 있는 쿠폰을 조회한다" , "다운로드 받은 쿠폰을 조회한다"와 같이 의미가 비슷하지만 이해하기 헷갈려서 그렇습니다 ㅜㅜ

  • kotlin
  • spring-boot
  • 도메인
  • dbms/rdbms
  • backend
devfancy 댓글 1 좋아요 1 조회수 112

현재 시점에서..

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

현재시점에서 3회차 시험일 얼마 안남았는데 혹시 뭐부터 빨리봐야할까요... 제발 붙어야 하는데 일도 바쁘고 해서 저번주 주말부터 보기 시작해서 어떤 영상부터 시작해서 봐야할지 부탁드리겠습니다.

  • python
  • java
  • c
  • 정보처리기사
승처리 댓글 2 좋아요 1 조회수 126

ASCII 코드 변환 관련

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

ASCII 코드 강의 챕터 9:10 char lower = 'a';에서 a는 문자 취급하고 char upper = (char)(lower-32); 여기에서 (char)은 문자 취급하는 구문이고 (lower-32) 관련하여 숫자 취급하는 int 같은 것이 없는데 lower는 a 문자로 확인이 됩니다. a 문자 관련하여 왜 ASCII 코드 97로 변환하여 32를 빼는지 이해가 되지 않습니다.

  • python
  • java
  • c
  • 정보처리기사
dhkdxo12 댓글 2 좋아요 0 조회수 87

7.조건문(v2) / 22:30 / 출력값 관련 문의

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

안녕하세요. printf("5+(a<b)=%d\n",5+result1); 출력결과가 5+(a<b)=6이라고 설명해 주셨는데, 출력값 관련해서 궁금한게 생겨서 질문드립니다. 문제에 출력 명령문이 printf("5+result1=%d\n",5+result1); 위와 같이 되어 있으면 결과는 어떻게 되나요? 5+1=6이 되나요? 아니면 5+result1=6이 되나요? 그 이유도 설명해 주시면 감사드리겠습니다.

  • python
  • java
  • c
  • 정보처리기사
태0 댓글 2 좋아요 0 조회수 67

required 포트에 관해서

해결됨

토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1

안녕하세요 토비님 현재 파트1에서는 아직 required 포트에있는 repository 인터페이스를 다른 도메인에서 사용하고 있지 않아서 중복이 발생하고 있지 않지만, 만약 다른 도메인에서도 같은 리포지토리를 사용해야할 경우 어떻게 하면 좋을지 질문드립니다. 제가 생각한건 첨부한 이미지와 같습니다. 도메인별로 각각 required 포트에 MemberFinder 인터페이스를 선언하고 그것을 Adapter layer에서 각각 도메인 별로 구현합니다. 하지만 실제 로직은 Adapter레이어에 있는 MemberRepository를 부르는 역할만 할 뿐입니다

  • java
  • spring
  • spring-boot
  • jpa
  • 리팩터링
  • ddd
Kopher 댓글 2 좋아요 0 조회수 113

자바 equals() 메소드에 대한 물리적 동일성, 논리적 동등성 질문

미해결

김영한의 실전 자바 - 중급 1편

========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 여기에 질문 내용을 남겨주세요. 김영한 자바 중급1의 섹션2에서 equals의 동일성과 동등성에 대한 내용의 퀴즈내용중에서 질문이 있습니다.(이미지 참조) 자바에서는 기본적으로 "=="연산자와 equals() 메소드는 "물리적 동일성"으로 println을 했을때 둘 다 false로 잡히는것으로 이해가 되고 있는데요. 오버라이드를 별도로 생성해야 물리적 동일성과 논리적 동등성에 대한 euqals메소드를 차이점을 갖고 사용할 수 있는것으로 이해했습니다. 맞을까요? 그렇다면, 위의 섹션2 퀴즈 내용에서의 문제같은 경우는 좀더 세부적인 명시가 있어야 하는게 아닌지 아니면 제가 이해를 잘 못하고 있는 부분이 있는지 조언이 필요하여 Q&A에 질문을 남깁니다. 좋은 가르침 항상 감사합니다 ( _ _ )

  • java
  • 객체지향
  • equals
  • 물리적동일성
  • 논리적동등성
  • -
zeler1004 댓글 3 좋아요 0 조회수 133

연관관계 매핑을 안 쓸 경우, 사용해야 하는 전략

미해결

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 강의를 들으면서 웬만하면 repository 에서 entity 를 받아와서 이걸 Dto 로 변환해서 반환하게끔 처리하는 것을 배웠습니다. 다만 실무에서 연관관계 매핑을 쓰지 않을 경우 어떤 전략을 취해야 하는지 모르겠어서 질문드립니다. 단일 entity 만을 반환하는 경우 크게 문제되지 않지만, join 을 하게될 경우 entity 가 2개 이상이 필요한데 이 경우 Dto 를 쓸 수밖에 없는 상황이라고 생각됩니다. (혹은 querydsl 에서 Tuple 을 쓸 수 있다고 생각합니다) 이런 경우 어떻게 repository 에서 service 로 데이터를 올려주나요?

  • java
  • spring
  • spring-boot
  • jpa
고관우 댓글 2 좋아요 0 조회수 128

인기 태그

인프런 TOP Writers

주간 인기글