묻고 답해요
167만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결The 10x AI-Native Developer: 회사에서 AI로 압도적 성과를 내는 법
1-8. Dispatcher에 멘토 규칙 추가
(...중략...) // ===== 기존 보안 규칙들 (그대로 유지) ===== // 규칙 1: .env 파일 접근 제어 if (filePath.includes('.env')) { if (toolName === 'Read' || toolName === 'Grep') { console.error("❌ 보안 규칙 위반: .env 파일은 읽을 수 없습니다. 작업이 차단되었습니다."); process.exit(2); } } (...중략...) // ===== 새로운 아키텍트 멘토 규칙들 ===== // 멘토 규칙 1: 라우터 파일 수정 시 멘토링 if (filePath.includes('/routes/') && (toolName === 'Edit' || toolName === 'Create' || toolName === 'Write')) { const fileName = filePath.split('/').pop() || ''; const entityName = fileName.replace(/Routes?\.(js|ts)$/i, ''); console.error(`🎯 [라우터 수정 감지] ${entityName} API 라우터를 수정하려고 합니다.`); console.error(`📚 아키텍트 멘토의 조언: 라우터 수정 전에 다음을 확인하세요:`); console.error(` - src/models/${entityName}.js (데이터 모델)`); console.error(` - src/services/${entityName}Service.js (비즈니스 로직)`); console.error(` - 기존 API 패턴과의 일관성`); console.error(`먼저 관련 파일들을 읽고 계획을 세워주세요!`); process.exit(2); }이 코드를 보면 라우터 경로에 있는 파일을 수정하려고 할때와 .env 을 읽을때 동일하게항상 process.exit(2); 가 실행될 것 같습니다.환경변수를 절대 읽을 수 없는 것처럼라우터 경로 파일도 결국 절대로 수정할 수 없어야 하지 않나요?왜 수정 가능한건가요?
-
미해결스프링 부트 - 핵심 원리와 활용
@Counted 초기화
안녕하세요 강사님이 하시는것처럼 @Counted를 사용해서 메트릭을 수집하는데스프링 애플리케이션을 다시 실행하면 과거에 획득한 메트릭을 0으로 초기화되어서 처음부터 시작되더라고요.그런데 이러면 나중에 비즈니스 메트릭을 똑바로 수집하지 못하지 않나요?애플리케이션을 다시 시작해도 메트릭을 0부터가 초기화하는게 아니라 계속 누적되면서 하는 방법도 있나요?
-
미해결Next.js with Spring Boot
Actions formData 질문.
//!!첫번째 if문 if (fileNames.length > 0) { fileNames.forEach((fileName) => { updatedFormData.append('fileNames', fileName); }); } // Append all files to the new FormData object //!! 두번째 if문 const files = formData.getAll('files'); if (files.length > 0) { files.forEach((file) => { console.log('----------------------------------', file); if (file instanceof File) { if (file.size > 0) { updatedFormData.append('files', file); } } }); } 첫번째 if문하고, 두번째 if문하고 역할이 각각 뭔지 알수있을까요? 비슷하면서 헷갈립니다
-
해결됨누구보다 빠르게 배우는 Kotlin + Springboot + JWT 로그인
10번 영상이 중간부터 시작하는 것으로 보여요
영상을 시작하면 갑자기 JwtUtils 코드가 이미 어느 정도 작성된 상태에서 뭔가 에러 체크 하시는 부분부터 시작이 됩니다
-
미해결실전에서 바로 써먹는 Elasticsearch 입문 (검색 최적화편)
안녕하세요 질문 있습니다.
안녕하세요 질문 있습니다.스프링 부트에서는 엘라스틱 서치 라이브러리를 사용하지만 실제 서버는 오픈서치를 띄워서 사용 가능한지 궁금합니다.
-
해결됨제미니의 개발실무 - 커머스 백엔드 기본편
굿
좋아요.하드코딩에 대해 알려주는 강의가 95% 인데,일 하는 법에 대해 알려주는 강의인 것 같아요. 제가 강의 듣다가 가만 생각이 들던데, 일 잘하는 사람이 되기 위해 필요한 것들을 알려주는 강의가 아닐까 라는 생각이 드문드문 들더군요.
-
해결됨The 10x AI-Native Developer: 회사에서 AI로 압도적 성과를 내는 법
3-1 github action 연동시 질문 드립니다
[진도] 2차 전체 완료, 3주차 1강 진행 중[질문] 3-1 실습(Github Actions로 code review, @claude로 명령하기) 진행 중 두 workflow 모두 에러 발생상황: workflow 추가하여 PR올렸으나, workflow 실행 중 Run 단계 에서 에러 발생 에러 메시지:SDK execution error: 13243 | throw error; 13244 | } 13245 | } 13246 | getProcessExitError(code, signal) { 13247 | if (code !== 0 && code !== null) { 13248 | return new Error(`Claude Code process exited with code ${code}`); ^ error: Claude Code process exited with code 1 at getProcessExitError (/home/runner/work/_actions/anthropics/claude-code-action/v1/base-action/node_modules/@anthropic-ai/claude-agent-sdk/sdk.mjs:13248:14) at exitHandler (/home/runner/work/_actions/anthropics/claude-code-action/v1/base-action/node_modules/@anthropic-ai/claude-agent-sdk/sdk.mjs:13373:28) at emit (node:events:92:22) at #handleOnExit (node:child_process:511:14) } Error: Process completed with exit code 1.두 방법 모두 같은 에러 발생 시도해본 것: 1. Claude 분석 -> 토큰 부족하며, 정상적으로 실행될것으로 예상 (토큰 부족은 아닙니다.)2. GPT 분석1) API KEY 체크 -> 확인2) GitHub Token 권한 부족 -> 확인 구글링1) 비슷해보이는(?) 이슈링크(진행중인 이슈): https://github.com/anthropics/claude-code-action/issues/689 ClaudeCode WorkFlow 에러 스크린샷CodeReview WorkFlow 에러 스크린 node 버전: 24.12.0claude 버전: 2.0.76어떻게 해결하면 될까요??..
-
해결됨K6로 배우는 Spring Boot 부하 테스트 입문
그라파나 화면 관련하여 궁금한게 있습니다.
현재 화면에는 p90, p95만 있는데 p99도 보고 싶으면 어떻게 해야하나요?
-
미해결Next.js with Spring Boot
revalidatePath('/product/catalog/1')
revalidatePath('/product/catalog/1')쉽게 얘기해서 새로된 캐시데이터를 가져온다는 얘기인거죠?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
기본 생성자
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]JPA의 기본 스펙은 엔티티에 기본 생성자가 필수라고 했는데다른 엔티티는 다 생략되어있고 왜 Address에서만 명시를 하는건가요?
-
해결됨제미니의 개발실무 - 커머스 백엔드 기본편
도메인/엔티티 분리 상황에서 쓰기 작업 하는 방법
안녕하세요 제미니님 유튜브랑 인프런 강의 잘 듣고 있습니다. 항상 감사합니다. 😃다름이 아니라 강의를 보고 사이드 프로젝트를 해보고 있는데,도메인과 엔티티를 분리해서 엔티티는 단순 DB 매핑용으로만 쓰고 모든 비즈니스 로직을 도메인에서 처리해보려 하고 있습니다.그러다 보니 '수정'같은 경우(예를 들면 state를 예약에서 취소로 변경하는)에는 id로 엔티티를 찾고 도메인으로 매핑해서 도메인 내부에서 검증과 로직을 처리해야 하는데, 매핑하는 과정에서 수정하는 데 불필요한 List<같은 격벽 하위 도메인> 들도 다 조회를 해서 세팅을 해줘야 하더라구요. 1 : N 관계라 쿼리도 많이 나가게 되고 수정에 불필요한 필드들을 세팅하는 거라서 비효율적이라 생각해서 개선을 해보려 합니다.강의 예제 코드에서는 단순 update는 entity 에서 처리하는 것 같던데, 저는 도메인과 엔티티 계층을 엄격히 분리해서 service 내에서 entity를 의존하는 것이 불가능한 상황입니다. 또한 비즈니스 로직도 엔티티가 아닌 도메인 내부에 놓고 싶습니다. 수정에 필요한 필드만 가지고 있는 수정용 도메인을 만들어서 처리할까 생각도 해보았는데, 비즈니스 로직이 흩어지는 것도 이상하고, 얕은 지식이지만 애그리거트 루트에서 데이터 변경이 이루어져야 한다는 생각이 있습니다.그렇다고 도메인 내부의 하위 도메인 리스트를 nullable하게 가자니 제미니님이 OrderSummary 관련 강의 때 말씀하신 null을 허용하는 도메인을 웬만해서는 선호하지 않는다에 공감이 가서 고려를 안하고 있습니다. 조언을 주시면 정말 감사하겠습니다 ㅜ.ㅜ 😢
-
해결됨제미니의 개발실무 - 커머스 백엔드 기본편
도메인 객체와 엔티티 객체 사용
안녕하세요, 강의랑 유튜브 너무 잘 보고있습니다.강의를 보면서 여러 인사이트를 얻었습니다!궁금한 점은 코틀린이 아닌 자바를 사용할 경우엔 엔티티 객체를 도메인 객체로 변환해서 return 해줄 때 코드가 다소 지저분해지는데요 ㅠㅠ어떤 방식이 가장 유효할지 의견 부탁드립니다! 엔티티 객체에 toDomain() 과 같은 도메인 객체 변환 메서드 생성Mapper 클래스 생성 (ex. ProductMapper.toDomain(entity)) (생성 한다면 어느 모듈, 위치에..?)추가적으로 도메인 객체를 사용한다면, 엔티티 -> 도메인 -> 클라이언트 응답 DTO 와 같은 변환 과정을 거의 필수적으로 거쳐가야하는데, 이 부분에 대해서 도메인 객체와 엔티티 객체의 분리 시점이 재미니님은 있으신건가요?아니면 프로젝트 시작부터 도메인과 엔티티는 구분해서 사용할 것이다! 라고 정하고 시작하시는 편이신가요? 물론 프로젝트의 규모와 도메인의 복잡도 등에 따라 유연하게 변해야 한다고 생각하지만, 해당 경험이 없다시피 하다보니 현재 프로젝트 구조에서 구현 레이어 밖으로 나갈때 도메인 객체로 변환의 이점과 트레이드 오프에 대해 어떻게 생각하시는지 궁금합니다!
-
해결됨K6로 배우는 Spring Boot 부하 테스트 입문
그라파나에 뜨는 화면 관련해서 질문 있습니다
localhost:3000 띄우고 강의에서 시키는 대로 한 후 grafana 화면 들어가니 전부 NA 만뜨고 한번은 우측 상단에 Unexpected Error 라는 문장이 뜬적이 있는데 왜 그런가요?
-
미해결죽음의 Spring Batch: 새벽 3시의 처절한 공포는 이제 끝이다.
Remote Partitioning
킬구형 6장 작전3에 첫번째 예제 Manager 노드 실행 명령까지 전체 코드를 볼 방법이 있어?
-
미해결실습으로 배우는 선착순 이벤트 시스템
ApplyService와 Consumer서비스의 db공유?
안녕하세요 강의 잘 듣고 있습니다.ApplyService와 Consumer서비스의 db관련 질문을 하려 합니다.9:30분쯤부터 ApplyService와 컨슈머서비스를 분리해서 테스트를 진행하는데 AppliServiceTest를 보면 자신의 CouponRepository에서 count개수가 100개인지 체크하는것 같습니다. 저는 쿠폰생성 및 저장 로직을 전부 컨슈머서비스로 옮겨서 여기서 쿠폰테이블을 관리한다고 생각했는데 어떻게 ApplyService가 자신이 이전에 사용하던 CouponRepository에서 count 체크가 가능한건지 궁금합니다. 혹시 두 서비스가 하나의 db를 공유하는건가요?
-
미해결스프링과 JPA 기반 웹 애플리케이션 개발
Study 개설하는 로직에 대해서 궁금점이 있습니다.
현재보면 repository에 저장하고 나서 manager등을 set하게 되는데 이렇게 되면 쿼리수가 늘어나서 set을 먼저하고 repository에 저장을 해주는게 효율적이지 않을까요? 다른 특별한 이유때문에 순서를 save를 하고 set으로 결정하셨는지 궁금합니다.
-
미해결죽음의 Spring Batch: 새벽 3시의 처절한 공포는 이제 끝이다.
킬구형 실무에서는 JPA ItemReader / ItemWriter를 더 선호해? 아니면 JDBC itemReader/ItemWriter를 더 선호해?
킬구형, 히사시 부리데쓰요야 JPA ItemReader와 ItemWriter를 배워보니 생각보다 복잡하고 여러 고려사항들이 많이 보이는 것 같아, 물론 JPA와 통합이 되서 좋지만 JPA를 쓰고 있어도 Jdbc ItemReader/ItemWriter가 훨씬 더 간단해보이고 별다른 추상화도 많이 없어서 성능도 괜찮아 보이는데, 실무에서는 어때? JPA ItemReader / ItemWriter를 더 많이 써 Jdbc ItemReader/ItemWriter를 더 많이써? PS: 킬구형 어떻게 이렇게 자세한 내용들을 알 수 있는거야? spring batch 공식 docs를 봐도 내용이 없던데 ㅋㅋㅋ 킬구형 없었으면 큰일 날뻔했자너~
-
미해결코드로 배우는 React 19 with 스프링부트 API서버
혹시 뭐가 문제인지 알 수 있나요?
Execution failed for task ':org.zerock.mallapi.MallapiApplication.main()'.> Process 'command 'C:\Users\User\.jdks\temurin-21.0.9\bin\java.exe'' finished with non-zero exit value 1* Try:> Run with --stacktrace option to get the stack trace.> Run with --info or --debug option to get more log output.> Run with --scan to generate a Build Scan (powered by Develocity).> Get more help at https://help.gradle.org.
-
미해결실전! 스프링 데이터 JPA
MemberRepository 구현체
MemberRepository의 구현체는 프록시 객체라고 배웠습니다 그렇다면 해당 프록시 객체 안에서 SimpleJpaRepository와 MemberCustomRepositoryImpl 등을 필드로 갖고 있는 형태인가요?
-
미해결백엔드 개발자 성능 개선 초석 다지기
script Validate가 안됩니다.
계속해서 똑같은 오류만 나오고있습니다. 오류를 몇시간씩 찾아봤고, 테스트의 버전을 변경하고, 다 지우고 다운로드를 다시받고,jdk버전을 홈 기준 11로도 맞춰보고 다 해봤지만 계속해서 같은 오류가 나는데 어떻게 해결할 수 있을까요?