묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨김영한의 실전 자바 - 기본편
실무와 this, 멤버변수와 매개변수 이름 짓기
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요! 실무와 관련해서 궁금한 점이 있습니다.IDE 가 발전하면서 매개변수와 멤버변수를 색으로 구분할 수 있게 되어서 this를 잘 쓰지 않는다고 하셨는데요, 그렇다면 매개변수와 멤버변수명을 일부러 다르게 설정을 하나요? 감사합니다.
-
해결됨재고시스템으로 알아보는 동시성이슈 해결방법
redisson lock을 AOP로 변경하는 경우 실무 사용 방법 문의드립니다!
강사님 안녕하세요!해당 강의 수강 후 실무에 재고 동시성 처리 코드를 개발하고 있는데 궁금한 부분이 있어서 문의드립니다! redisson lock 으로 구현하였는데, 중복 코드가 많아서 AOP로 작업 작업을 하려합니다.aop를 작업 하는 경우 facade가 아니라 stockService에 직접 어노테이션을 추가하는 형태로 하는게 맞을지 혹시 해당 부분은 실무에서 사용하실때 어떤 형태로 하시는지 문의드립니다.구글 검색을 하다보니 AOP로 트랜잭션 new로 한다는 이야기가 있는데 실무에서 어떻게 쓰셨는지 궁금해서 문의드립니다!감사합니다! @Component public class RedissonLockFacade { private RedissonClient redissonClient; private StockService stockService; public RedissonLockFacade(RedissonClient redissonClient, StockService stockService) { this.redissonClient = redissonClient; this.stockService = stockService; } public void decrease(Long id, Long quantity) { RLock lock = redissonClient.getLock(id.toString()); try { boolean available = lock.tryLock(10, 1, TimeUnit.SECONDS); if (!available) { System.out.println("lock 획득 실패"); return; } stockService.decrease(id, quantity); } catch (InterruptedException e) { throw new RuntimeException(e); } finally { lock.unlock(); } } }
-
해결됨스프링 핵심 원리 - 기본편
섹션3. 스프링핵심원리 이해 강의내용질문
의존관계 주입을 사용하면 클라이언트 코드를 변경하지 않고, 클라이언트가 호출하는 대상의 타입 인스턴스를 변경할 수 있다. 의존관계 주입을 사용하면 정적인 클래스 의존관계를 변경하지 않고, 동적인 객체 인스턴스 의존관계를 쉽게 변경 할 수 있다. 결국 이 두문장은 똑같은 말 아닌가요? 클라이언트 코드를 변경하지 않는다 == 정적인 클래스 의존관계를 변경하지 않는다클라이언트가 호출하는 대상의 타입 인스턴스를 변경할수있다 == 동적인 객체 인스턴스 의존관계를 쉽게 변경할수있다. 결국 실행이 되는부분은 클라이언트코드니까 동적으로 실행될때 정적인 클래스 의존관계가 유지가 되겠고,인스턴스가 변경할 수 있다는 의미는 런타임중에 정률 할인 정책으로 될지, 정액 할인 정책으로 될지가 동적인 인스턴스의 관계를 변경할수있다는 의미로 들려서 결국 두문장은 같은의미로 사용되지않았나 싶습니다
-
미해결Next + React Query로 SNS 서비스 만들기
Error: CredentialsSignin
백엔드소스 받아 로컬에 서버 가동시켰고, 레디스 서버도 켜두었고강사님이 올려주신 클라이언트 ch4소스에서 실행시켜, 회원가입 도중 에러가 발생합니다. postresql 디비에는 정상적으로 회원정보가 등록되긴 하였습니다만, 프론트에서 아래와 같은 에러가 있는데요원인이 무엇일까요? Error: CredentialsSignin at signIn (webpack-internal:///(action-browser)/./node_modules/next-auth/lib/actions.js:62:22) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) at async $$ACTION_0 (webpack-internal:///(action-browser)/./src/app/(beforeLogin)/_lib/signup.ts:53:9) at async /Users/yhj/Desktop/yhj_projects/next-app-router-z-master/ch4/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:38:489 at async tX (/Users/yhj/Desktop/yhj_projects/next-app-router-z-master/ch4/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:37:5313) at async rl (/Users/yhj/Desktop/yhj_projects/next-app-router-z-master/ch4/node_modules/next/dist/compiled/next-server/app-page.runtime.dev.js:38:23339) at async doRender (/Users/yhj/Desktop/yhj_projects/next-app-router-z-master/ch4/node_modules/next/dist/server/base-server.js:1406:30) at async cacheEntry.responseCache.get.routeKind (/Users/yhj/Desktop/yhj_projects/next-app-router-z-master/ch4/node_modules/next/dist/server/base-server.js:1567:28) at async DevServer.renderToResponseWithComponentsImpl (/Users/yhj/Desktop/yhj_projects/next-app-router-z-master/ch4/node_modules/next/dist/server/base-server.js:1475:28) at async DevServer.renderPageComponent (/Users/yhj/Desktop/yhj_projects/next-app-router-z-master/ch4/node_modules/next/dist/server/base-server.js:1852:24) at async DevServer.renderToResponseImpl (/Users/yhj/Desktop/yhj_projects/next-app-router-z-master/ch4/node_modules/next/dist/server/base-server.js:1890:32) at async DevServer.pipeImpl (/Users/yhj/Desktop/yhj_projects/next-app-router-z-master/ch4/node_modules/next/dist/server/base-server.js:902:25) at async NextNodeServer.handleCatchallRenderRequest (/Users/yhj/Desktop/yhj_projects/next-app-router-z-master/ch4/node_modules/next/dist/server/next-server.js:266:17) at async DevServer.handleRequestImpl (/Users/yhj/Desktop/yhj_projects/next-app-router-z-master/ch4/node_modules/next/dist/server/base-server.js:798:17)
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
14번만 채점파일 없다는걸 미리 알려줬으면 좋겠어요
채점파일 찾느라 3번정도 다운로드 받고 찾아 해맸습니다.공유하는 파일에 설명을 같이 넣는다 던지 강의 끝까지 보기전에 미리 알게 했으면 더 편리 했을것 같습니다.
-
해결됨2주만에 통과하는 알고리즘 코딩테스트 (2024년)
3강 누적합 11660 2차원 배열 문제
안녕하세요!강의영상과 백준 문제에서 입력 순서를 x1,y1,x2,y2 형식으로 입력을 받는데 이렇게 입력할 경우 결과가 반대로 나오는거 같습니다.ex. 1,2,1,2일 경우 2,1,2,1의 결과가 출력인덱싱을 graph[y][x] 형태로 진행하여 파생된 문제 같습니다.그러므로 입력을 y1,x1,y2,x2로 변경하거나 2차원 배열 인덱싱을 graph[x][y] 형태로 변경해야할 것 같습니다.제가 이해한게 맞나요?항상 좋은 강의해주셔서 감사드립니다.
-
해결됨GraphQL 완전정복 (키오스크를 만들며 배우는 풀스택 과정) - [2024 부분 리뉴얼]
윈도우 meteor run 할 때 에러
노드 v14.21.3 입니다.터미널 git bash에서 실행하였고,npm i -g meteor 하여 설치 한 후에DISABLE_WEBSOCKETS=true meteor run 해도 안되네요. bash: meteor: command not found AppData/Local/.meteor 위치에는 이렇게 있어서meteor 설치, 삭제 다 해봤는데도 안 되네요 .. 이런 오류는 어떻게 고쳐야 할까요..?
-
미해결챗GPT와 파이썬으로 유튜브 AI 직원 만들기
openai.error.RateLimitError:
안녕하세요 현재 수업을 듣고있는 중에 아래와 같은 에러가 발생했습니다.openai.error.RateLimitError: You exceeded your current quota, please check your plan and billing details. For more information on this error 조금 찾아보았는데.. 아래 사항들에 전혀 해당하지 않습니다. 심지어 돈 주고 gpt4 사용하고 있는데.. 어떤 문제일지 여쭤봐도 될까요?- You are using a loop or a script that makes frequent or concurrent requests.- You are sharing your API key with other users or applications.- You are using a free plan that has a low rate limit.https://help.openai.com/en/articles/6891829-error-code-429-rate-limit-reached-for-requests
-
미해결Next + React Query로 SNS 서비스 만들기
안녕하세요 (.)에 관해 질문이 있습니다
[제로초 강좌 질문 필독 사항입니다]질문에는 여러분에게 도움이 되는 질문과 도움이 되지 않는 질문이 있습니다.도움이 되는 질문을 하는 방법을 알려드립니다.https://www.youtube.com/watch?v=PUKOWrOuC0c0. 숫자 0부터 시작한 이유는 1보다 더 중요한 것이기 때문입니다. 에러가 났을 때 해결을 하는 게 중요한 게 아닙니다. 왜 여러분은 해결을 못 하고 저는 해결을 하는지, 어디서 힌트를 얻은 것이고 어떻게 해결한 건지 그걸 알아가셔야 합니다. 그렇지 못한 질문은 무의미한 질문입니다.1. 에러 메시지를 올리기 전에 반드시 스스로 번역을 해야 합니다. 번역기 요즘 잘 되어 있습니다. 에러 메시지가 에러 해결 단서의 90%를 차지합니다. 한글로 번역만 해도 대부분 풀립니다. 그냥 에러메시지를 올리고(심지어 안 올리는 분도 있습니다. 저는 독심술사가 아닙니다) 해결해달라고 하시면 아무런 도움이 안 됩니다.2. 에러 메시지를 잘라서 올리지 않아야 합니다. 입문자일수록 에러메시지에서 어떤 부분이 가장 중요한 부분인지 모르실 겁니다. 그러니 통째로 올리셔야 합니다.3. 코드도 같이 올려주세요. 다만 코드 전체를 다 올리거나, 깃헙 주소만 띡 던지지는 마세요. 여러분이 "가장" 의심스럽다고 생각하는 코드를 올려주세요.4. 이 강좌를 바탕으로 여러분이 응용을 해보다가 막히는 부분, 여러 개의 선택지 중에서 조언이 필요한 부분, 제 경험이 궁금한 부분에 대한 질문은 대환영입니다. 다만 여러분의 회사 일은 질문하지 마세요.5. 강좌 하나 끝날 때마다 남의 질문들을 읽어보세요. 여러분이 곧 만나게 될 에러들입니다.6. 위에 적은 내용을 명심하지 않으시면 백날 강좌를 봐도(제 강좌가 아니더라도) 실력이 늘지 않고 그냥 코딩쇼 관람 및 한컴타자연습을 한 셈이 될 겁니다. 안녕하세요질문은 인터셉팅라우트의 (.)i폴더 입니다 @modal이 주소에 관계없기때문에(beforeLogin)의 i/flow/login를 대체할 수 있다고 하셨는데요 (beforeLogin)도 주소와 관계가 없다고 하셨어서 (.)i가 무엇을 기준으로 대체하는 것인지 헷갈립니다. 또한 @modal의 경우에는 @modal/i/flow/login과 같이 연결되는 주소가 있어보여서 (.), (..)등의 인터셉팅라우트의 키워드가 무엇을 기준으로 하는지 명확하게 이해가 안됩니다
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
java: cannot find symbol
java: cannot find symbolsymbol:method isEqualTo(hello.hellospring. domain. Member)location: variable result of type hello.hellospring.domain.Member 계속 에러나고 구글링해도 안나와요 ㅠ도와주세여
-
미해결스프링 핵심 원리 - 기본편
List, Map 으로 빈 조회 할 때
AutoAppConfig.class를 넣으면 빈 값이 나와야 하는데 안 나와서 문의 드립니다..!
-
미해결
saveAndFlush 저장후 QueryDsl 조회 문의
@Transactional public AccessTokenResponse signup(MemberRequest request) { Member member = request.toMember(passwordEncoder); MemberDetails memberDetails = memberRepository .findMemberDetailsByMemberId(memberRepository.saveAndFlush(member).getId()) .orElseThrow(RuntimeException::new);맨아래서, 2번째 줄에서 member의 정보를 DB에 저장합니다.: saveAndFlush 이용그리고 나서 QueryDSL로 작성된 findMemberDetailsByMemberId 으로 해당 멤버의 정보를 조회해 왔습니다.: 그러나, 해당 쿼리로는 조회된 값이 없어 null 이 반환되었습니다. 확인해보니, saveAndFlush를 통해 해당 멤버의 정보가 즉각 DB에 반영되지 않아서 QueryDSL 로된 쿼리로 해당 멤버의 정보가 조회되지 않은 것인데요. 제가 알기로 saveAndFlush를 이용하면 즉각 DB에 반영되는 것으로 알고있었는데... 아닌가요?이런 경우 어떤 방법으로 해결할 수 있을지 조언 주시면 감사하겠습니다!(member 정보 저장 후, querydsl로 조회해올 수 있는 방법)
-
해결됨실전! Querydsl
테스트 코드 EntityManager Autowired 컴파일 에러 질문드립니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]build.gradle 설정은 아래와 같이 하였습니다.빌드를 하니 build 경로에 Q타입 생성된 것을 확인했습니다.plugins { id 'java' id 'org.springframework.boot' version '3.2.1' id 'io.spring.dependency-management' version '1.1.4' } group = 'study' version = '0.0.1-SNAPSHOT' java { sourceCompatibility = '17' } configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.9.0' compileOnly 'org.projectlombok:lombok' runtimeOnly 'com.h2database:h2' annotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' //test 롬복 사용 testCompileOnly 'org.projectlombok:lombok' testAnnotationProcessor 'org.projectlombok:lombok' //Querydsl 추가 implementation 'com.querydsl:querydsl-jpa:5.0.0:jakarta' annotationProcessor "com.querydsl:querydsl-apt:${dependencyManagement.importedProperties['querydsl.version']}:jakarta" annotationProcessor "jakarta.annotation:jakarta.annotation-api" annotationProcessor "jakarta.persistence:jakarta.persistence-api" } tasks.named('test') { useJUnitPlatform() } clean { delete file('src/main/generated') } 테스트 코드package study.querydsl; import com.querydsl.jpa.impl.JPAQueryFactory; import jakarta.persistence.EntityManager; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.transaction.annotation.Transactional; import study.querydsl.entity.Hello; import study.querydsl.entity.QHello; import static org.assertj.core.api.Assertions.*; @Transactional @SpringBootTest class QuerydslApplicationTests { @Autowired EntityManager em; @Test void contextLoads() { Hello hello = new Hello(); em.persist(em); JPAQueryFactory query = new JPAQueryFactory(em); QHello qHello = new QHello("h"); Hello result = query.selectFrom(qHello) .fetchOne(); assertThat(result).isEqualTo(hello); } }해당 테스트 코드에서 em 부분에 컴파일 에러(Could not autowire. No beans of 'EntityManager' type found. )가 발생하고 테스트를 실행하면 아래와 같은 메세지가 출력됩니다.Execution failed for task ':test'. > There were failing tests. See the report at: file:///C:/Users/user/OneDrive/%EB%B0%94%ED%83%95%20%ED%99%94%EB%A9%B4/querydsl/build/reports/tests/test/index.html * Try: > Run with --scan to get full insights. Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0. You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins. For more on this, please refer to https://docs.gradle.org/8.5/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation. BUILD FAILED in 3s 4 actionable tasks: 3 executed, 1 up-to-date인텔리제이 종료 후 .idea 파일 삭제후 프로젝트 다시 실행해도 동일한 상황이어서 질문 드립니다. Gradle 버전은 8.5입니다.https://android-developer.tistory.com/entry/%ED%95%B4%EA%B2%B0-Deprecated-Gradle-features-were-used-in-this-build-making-it-incompatible-with-Gradle-80-%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C-%EC%8A%A4%ED%8A%9C%EB%94%94%EC%98%A4해당 링크 방법도 해보았지만 동일한 상황입니다.
-
해결됨Java 마이크로서비스(MSA) 프로젝트 실습
첫번째 MSA 설명 문서 7페이지 model 오타요
잘못써있네용
-
해결됨외워서 끝내는 네트워크 핵심이론 - 기초
L2 스위치(L2 Access와 L2 Distribution)
안녕하세요? 항상 좋은 강의 감사드립니다. L2 스위치는 L2 Access와 L2 Distribution이 있는데 이들은 같은 네트워크인가요? 즉, IP 주소에서 network id는 같은건가요?네트워크가 처음이고 많은 개념이 들어오니 막 헷갈리네요ㅠ
-
미해결
JPA saveAndFlush 이후 QueryDSL 조회에 관한 질문드려요.
@Transactional public AccessTokenResponse signup(MemberRequest request) { Member member = request.toMember(passwordEncoder); MemberDetails memberDetails = memberRepository .findMemberDetailsByMemberId(memberRepository.saveAndFlush(member).getId()) .orElseThrow(RuntimeException::new);맨아래서, 2번째 줄에서 member의 정보를 DB에 저장합니다.: saveAndFlush 이용그리고 나서 QueryDSL로 작성된 findMemberDetailsByMemberId 으로 해당 멤버의 정보를 조회해 왔습니다.: 그러나, 해당 쿼리로는 조회된 값이 없어 null 이 반환되었습니다. 확인해보니, saveAndFlush를 통해 해당 멤버의 정보가 즉각 DB에 반영되지 않아서 QueryDSL 로된 쿼리로 해당 멤버의 정보가 조회되지 않은 것인데요. 제가 알기로 saveAndFlush를 이용하면 즉각 DB에 반영되는 것으로 알고있었는데... 아닌가요?선배님들의 조언 부탁드립니다 ㅠ
-
해결됨떠먹는 Three.js
index.html 실행 시 CORS 문제
현재 [섹션0]까지 수강 완료하였습니다.index.html 파일 실행 시 이렇게 CORS 문제가 발생됩니다.어떻게 해결할 수 있을까요?ㅠㅠ
-
해결됨직장인에게 꼭 필요한 파이썬-아래아한글 자동화 레시피
특정 누름틀 필드 제거
이것저것 다양하게 자동화코드 짜보시다가막히면 언제든 무엇이든 질문 던져주세요.업무자동화 코딩은 과학이나 알고리즘과는 조금 달라서고민만으로 풀리지 않는 경우가 대부분입니다.저도 최대한 빠르게 회신 드리겠습니다. hwp.DeleteCtrl 부분 잘 학습하다가업무에서 입력할 부분을 입력한뒤전체 누름틀 제거가 아닌특정 누름틀을 제거하고 싶은 경우는 어떻게 방법이 있을까요?
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
login에서 token 을 받는 이유가 있을까요?
안녕하세요.토큰시스템을 사용하도록 엔드포인트 변경하기 편을 보고 질문드립니다.보통 login api 라고 하면 token 없이 email, pw 만 받아 validation 하는 것을 목적으로 한다고 알고있는데기획에 따라 헤더의 authorization 필드를 사용한 token 로그인도 해야할 수 있다고 하셔서 궁금한점이 생겼습니다.어떤 경우에 그런 상황이 있는지 대략적인 케이스를 소개해주실수있을까요?강의 잘 보고있습니다. 감사합니다.
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
서버 분산 처리 에 대해서는 혹시 다룰 예정이 없으신가요?
게임서버만 제작하셨는데 DB 서버나 채널 등등 scale-up 관련으로 혹시 다룰 생각 없으신가요? 그리고 다른 질문에서 "나머지 MMO 컨텐츠는 추후 실전 부트캠프 강의에서나 다룰 생각입니다."이렇게 대답해주신거를 들었는데 부트캠프 강의 일정은 혹시 언제쯤 가능할지 알수 있을까요?끝으로 좋은강의 너무 감사합니다 다른 강의도 너무 잘듣고 있습니다.,