묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)
Custom 레프직토리 형식
안녕하세요 강사님 취준생으로써 강의 들으면서 궁금한 점 질문 드립니다.1.CustomRepository형식 과 Impl 형식이 보통 어떨때 자주 쓰이는 지 궁금해서 질문 드립니다. 2.JPA 에서 작성한 것들을 Querydsl 로 바꿀때가 그럼 ByXxx 에서 조인조건이 두개이상 들어가면 무조건 Querydsl 자바코드로 바꾸어 주는 게 좋을까요?
-
미해결개발 역량 + 자격증까지, Java로 PCCP 자격증 준비하기
응시권 문의
응시권을 신청하면 올해 무조건 시험 신청을 해야하는건가요? 사용기간이 있는걸까요?
-
미해결죽음의 Spring Batch: 새벽 3시의 처절한 공포는 이제 끝이다.
4장 RetryPolicy 예제 코드 질문이요
킬구형 RetryPolicy 작동 방식이 policyMap에서 우선 발생한 에러의 상위 카테고리를 찾고, RetryPolicy에 들어있는 SimpleRetryPolicy가 실제로 각 에러에 대해 어떻게 처리할지를 정하는 것 같은데 그러면 두 에러가 상속 관계에 있어야지만 정상적으로 작동하는 거 같은데 맞아?그런데 예제 코드에 있는 HttpTimeoutException와 HttpServerErrorException는 상속 관계가 아니어서 아마 의도대로 작동하지 않을 것 같은데 한 번 검토해봐줄 수 있어?참고로 나는 java17 + spring-boot-starter-batch:3.5.6 환경으로 진행중이야
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
Query Dsl Q파일 질문입니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.질문 메뉴얼 링크 따라서 build.gradle을 설정했는데, Q파일이 보이지 않습니다.사진을 보면 우측 other 파일 밑에 querydsl이 없는데 어떻게 해야 하나요?현재 저의 build.gradle 입니다.
-
미해결죽음의 Spring Batch: 새벽 3시의 처절한 공포는 이제 끝이다.
섹션1 | 2장 이미지(Flexible.png) 내 오타 제보
킬구형 강의 특별해서 좋아~ 즐길 수 있을거 같아! 이런 강의 의도를 더 믿음있게 하기 위해서 오타 제보~ 섹션 1. SYSTEM INIT: 스프링 배치 종결의 서막 2. 배치 처리, 시스템 종결의 서막💀 Flexible.png 이미지 내 오타 ItemReader interface 를 상속하는 RedisItemWriter 는 없다. RedisItemReader 가 존재한다
-
미해결스프링 부트와 리액트로 구현하는 소셜 로그인
Jwt 토큰문제
Jwt토큰 클래스에서 Keys를 사용하기 위해서 더 추가해야하는것이 있나요?
-
해결됨카카오 면접관(개발자)이 알려주는 MSA 관점에서의 분산 트랜잭션 패턴
입금 성공 후 계좌 잔고 증가 로직 구현 방법 문의
강의를 보고 궁금한 점이 생겨서 질문드립니다.강의에서 구현된 송금 프로세스를 분석해보니,출금은 정상적으로 잔고가 차감되지만 입금 시 받는 계좌의 잔고를 증가시키는 로직이 없는 것 같습니다.예를 들어:- Choreography 방식: handleDepositSuccess() 메서드에서 SagaState만 COMPLETED로 업데이트- Orchestration 방식: Transaction Service에서 deposit 기록만 생성현재와 같이 데이터베이스가 서비스별로 분리된 상황에서,입금 성공 후 받는 계좌의 잔고를 증가시키는 로직을 어떻게 구현해야 하는지 궁금합니다.제가 생각한 방법은:1. Orchestration 방식: Transaction Service의 REST 응답이 성공하면,Account Service에서 받는 계좌의 잔고를 증가시킴2. Choreography 방식: Transaction Service에서 deposit.success 이벤트를 발행하면,Account Service에서 이벤트를 consume하여 받는 계좌의 잔고를 증가시킴이 두 가지 방식으로 접근하는 것이 맞는지,아니면 다른 권장 방법이 있는지 알려주시면 감사하겠습니다.
-
해결됨카카오 면접관(개발자)이 알려주는 MSA 관점에서의 분산 트랜잭션 패턴
코레오그래피 방식으로 SAGA 패턴을 구성할때 메시지 설계는 어떤식으로 해야하는지 궁금합니다
안녕하세요 강의를 보면서 SAGA 패턴에 대해 공부하면서 궁금한 부분이 생겼습니다코레오그래피 방식으로 주문 비지니스를 구성한다고 할때 메시지 브로커를 통해서 자신의 역할만 수행한다고 하셨는데 그러면 각 서비스가 어떻게 메시지를 설계해야하는지 궁금합니다주문서비스가 주문 요청을 받으면 재고 서비스에 주문한 상품에 대한 재고 감소를 진행하고 마지막으로 결제서비스가 결제를 진행할때 결제에 대한 금액을 결제서비스가 재고 서비스의 API를 통해 상품의 가격을 조회후 결제를 진행하는것인지 아니면 재고 서비스가 재고 감소를 실행하면서 상품의 가격 정보도 같이 재고 감소 성공 메시지에 추가하여 결제서비스가 이 메시지 정보를 통해 결제를 진행하는것인지 궁금합니다
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
name을 통한 비교와 객체를 통한 비교
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]회원 서비스 테스트 강의 5:27에 member와 findMember의 getName을 통해서 맞는지 확인을 했는데 왜 객체가 아닌 이름을 통해 비교를 하는건가요?
-
해결됨스프링부트로 직접 만들면서 배우는 대규모 시스템 설계 - 게시판
멀티 모듈이 아닌 MSA 환경에서 common
지금은 멀티 모듈로 프로젝트를 설정해서 common이라는 공통 모듈로 분리해도 문제가 없을 것 같은데, 정말 개발 환경이 달라지면 어떻게 진행이 되나요?예를 들어, board는 java, comment는 python으로 개발이 된다고 하면, board와 comment에 사용될 common을 팀끼리 약속을 해두고 각각 서버에 구현을 해서 사용하게 되나요?
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
정보처리기사 실기 | 25년 3회 기출문제 코드부분 1편 관련
안녕하세요, 강사님.매번 빠르게 기출 분석 및 해설 강좌 업로드 해주심에 대단히 감사드립니다!!! 😄글 제목과 관련된 위의 영상에서 말씀해주셨습니다만, 아직 인프런 강의 목록에서는 확인을 하지 못하여서요...2편은 포함하여, 강의 업로드 계획을 문의드리고자 글 남깁니다.항상 고생 많으십니다 ㅜㅜ감사합니다.
-
해결됨스프링 부트와 리액트로 구현하는 보안 JWT 로그인
정리된 문서도 받을 수 있을까요?
정리된 문서도 받을 수 있을까요?
-
미해결마이크로서비스 디자인 패턴 완벽 가이드
Orders에 테이블의 용도
Order 서비스에서 Command가 실행되면 ORDERS_EVENT에 이벤트가 저장되고 Query가 실행되면 ORDER_EVENT에서 이벤트를 읽어 데이터의 최종상태를 읽는다는것으로 이해했는데요..! 그렇다면 ORDERS 테이블은 실질적으로 사용되지 않는다고 이해하면될까요..?
-
해결됨토비의 클린 스프링 - 도메인 모델 패턴과 헥사고날 아키텍처 Part 1
페이징 처리를 해야한다면 어떻게 해야할까요?
Pageable 인터페이스와 @PageableDefault 를 컨트롤러부터 사용하면 편하게 작업할 수 있을 것이라고 생각하고 있습니다.그런데 spring-data에서 제공하는 것들이라 컨트롤러나 애플리케이션(서비스)에서 사용하면 안 될 것 같아서 새롭게 객체를 정의해서 사용해야 하는 것인가라는 생각이 드는데요. 한편으로는 유틸느낌으로 사용해도 되지 않을까라는 생각이 들기도 합니다. 실제로 @PageableDefault 이것은 org.springframework.data.web 패키지에 들어있어서 web계층을 대상으로 만들어진 것 같구요어떤식으로 풀어나가야 할까요? 추가적으로 Http interface를 사용하기 위해 @HttpExchange을 사용할 경우 required패키지 인터페이스에 바로 붙여서 사용해도 무방한걸까요?
-
미해결자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide)
강사님
백엔드 취준생이 고 강의랑 관련 된 내용은 아니지만강사님 강의를 2개 정도 구매했습니다. 지금 자바로 프로젝트 2개를 한 상태입니다.로드 맵 이 있어서 듣게 됐습니다.보통 Error 관련 코드를 만들 때 @ExceptionHandler 로 컨트롤러에서 발생한 에러를 잡고 @ControllerAdvice 가 모든 에러를 잡아서 관리 해 주는 걸로 다른 강의에서 배웠는데 보통 현업에서는 이렇게 하나요? 제가 프로젝트 두 개 모두이런식으로 enum 과 class 를 따로 만들어서 했는데 현업에서 어떻게 하는 지 궁금해서 질문드립니다. @Getter public class BusinessException extends RuntimeException { private final HttpStatus status; private final ErrorCode errorCode; public BusinessException(ErrorCode errorCode) { super(errorCode.getMessage()); this.status = errorCode.getErrorCode(); this.errorCode = errorCode; } public BusinessException(HttpStatus status, ErrorCode errorCode, String message, Throwable cause) { super(message, cause); this.status = status; this.errorCode = errorCode; } public BusinessException(HttpStatus status, String message) { super(message); this.status = status; this.errorCode = null; } } @Getter @AllArgsConstructor public enum ErrorCode { TOKEN_NOT_FOUND(HttpStatus.BAD_REQUEST, "토큰이 없습니다."), JWT_EXPIRED(HttpStatus.BAD_REQUEST, "jwt 토큰이 만료되었습니다. "), INVALID_JWT(HttpStatus.BAD_REQUEST, "jwt 토큰을 찾을 수 없습니다."), ACCEPTED_EXISTS(HttpStatus.CONFLICT, "팔로우를 찾을수없습니다."), FOLLOW_NOT_FOUND(HttpStatus.CONFLICT, "팔로우를 찾을수없습니다."), INVALID_FOLLOW_STATUS(HttpStatus.CONFLICT, "팔로우상태가 아닙니다."), AGREEMENT_INPUT(HttpStatus.CONFLICT, "약관 동의가 필요합니다."), INVALID_EMAIL_INPUT(HttpStatus.BAD_REQUEST, "해당 이메일은 소셜 로그인 계정입니다. 소셜 로그인을 이용하세요."), DUPLICATE_RESOURCE(HttpStatus.FORBIDD
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
42:22
-1 에서 "" 을 반환하고 0번째로 올라가서 a를 반환하는것 까진 이해했습니다.근데왜 abcd가 아니라 거꾸로 축력이 되는거죠
-
해결됨기초 탄탄! 독하게 시작하는 Java - Part 2 : OOP와 JVM
주소록 실습 3단계에서 막혔어서 조언을 구하려고 질문 드립니다.
안녕하세요. 개발자님. 주소록 3단계에 너무 막히고 시간이 끌려서 어찌해야할까 하고 조언을 얻으려고 질문 드립니다. 정답을 보니내용을 너무 어렵게 생각했다 라는 생각이 드는 것이 먼저이고 이러한 실습을 많이 해보지 못한 개발자이고, 경험을 많이 쌓아봐야 숙달이 되는 것은 인지는 하고 있지만... 그래도 새로운 것을 시도해보라고 하면 처음이 무슨 소리인지 모르고 적용을 어떻게 할 지 몰라서 막막합니다. (하루 이틀이 지나야 번뜩 떠오릅니다) 그래서 이러한 문제를 어떤 것을 참고 삼아서 공부를 해야 할 지 조언을 얻고 싶습니다. 많이 해보는 것만이 답인지 반복 숙달이 답인지 개개인마다 다른지 ...
-
해결됨(2026) 일주일만에 합격하는 정보처리기사 실기
60강 빈칸채우기 11:31
이 문제에서 int 형태로 input에 101110이들어가면 10진수 10만1110으로 인식하지 않나요..? 설명이 조금더 있었으면 좋겠습니다 어떻게 이 프로그램이 2진수로 인식을 하나요?
-
미해결죽음의 Spring Batch: 새벽 3시의 처절한 공포는 이제 끝이다.
킬구형 혼자 삽질하면서 배치 운영하는데 궁금한 부분이 있어
안녕 킬구형 나는 오랜만에 배치 복습하려고 형 강의 구매했어!일단 그냥 책 보면서 실무에서 배치를 운영을 하려니깐 고민이 있어.형 생각이 궁금해서 질문을 남겨 1. Jenkins , Spring Batch형 일단 나는 Batch를 실무에서 Jenkins 스케줄러 + Batch 이렇게 사용하고 있어. 그런데 배치 인프라에 대해서 요즘 고민이 생기는 거 같아. 나는 job enabled를 false로 설정하면서 운영하고 있는데 만약에 배치가 N개로 운영되고 있다고 가정하면 port 충돌에 대해서 고민이야 물론 parameter로 port를 넘겨줄 수 있어서 현재는 스크립트로 남는 포트를 parameter로 넘겨주면서 사용하고 있어. 간편성을 생각한다면 그냥 enabled를 true로 하고 api 형식으로 그냥 호출만 해주면 이런 복잡한 과정 없이 사용할 수 있을 거 같은데 어떻게 생각해. 2. CI/CD하나의 jar에서 여러 개의 배치가 돌아가는데 이때 CI/CD 과정에서 문제가 생길 수 있을 거 같다. 현재는 ln 심볼릭 링크로 해결을 하고 있는데 이게 적절한 방식인지? 아니면 다른 방식이 있는지 궁금해 3. JobParametersIncrementer형 Spring Batch에서 JobParametersIncrementer(RunIdIncrementer 등) 관련해서 궁금한 점이 있어 만약 업무적으로 특별한 파라미터(날짜, 키 등)가 없는 반복 배치라면이 때는 run.id와 같은 증분기 기반의 값으로 JobInstance의 고유성을 관리 하지만 업무적으로 중요한 파라미터(날짜, 키 값 등)가 있다면 이 경우에는 run.id 대신 해당 파라미터를 JobInstance의 기준으로 써야 멱등성 및 실패/재실행 제어가 더 적합하다고 생각해. 실제로 파라미터가 없는 경우에는 run.id로 멱등성을 보장하고, 파라미터가 있는 경우에는 run.id 증분기를 쓰면 오히려 동일 파라미터로 재실행/복구 등 업무상 중요 컨트롤이 어렵지 않나요? 이런 경우 run.id 증분기를 같이 쓰는 게 맞는지, 아니면 아예 쓰지 않는 게 맞는지 설계 원칙이 궁금해요.https://github.com/spring-projects/spring-batch/issues/4910https://github.com/spring-projects/spring-batch/wiki/Spring-Batch-6.0-Migration-Guide
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
소스코드 실행이 안돼요
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]소스코드 실행하려고 하면 아래와 같이 뜹니다..