묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 핵심 원리 - 기본편
스프링 빈 자동 등록 방식에서의 @Configuration
(@Bean을 통해 스프링 빈을 수동 등록하는 방식이 아닌) 컴포넌트 스캔을 통해 자동 등록하는 방식을 사용할 때도 @Configuration이 붙은 클래스에 CGLIB가 적용되나요?컴포넌트 스캔 방식을 사용하는 AutoAppConfig 클래스 내부에는 아무런 코드도 존재하지 않고, 그렇다면 AutoAppConfig@CGLIB에서 오버라이딩할 메서드가 존재하지 않습니다. 기존에는 오버라이딩된 메서드 내에 싱글톤을 보장하는 코드가 담겨 있었는데, 이 방식은 메서드가 아닌 클래스 단위로 스프링 빈을 등록하므로 CGLIB를 적용할 필요가 없어 보입니다.
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
채점 프로그램 작동 안함
채점 프로그램을 돌리면 이렇게 뜨는데 해결 방법이 있을까요? 처리되지 않은 예외: System.AggregateException: 하나 이상의 오류가 발생했습니다. ---> System.IO.IOException: 파이프가 끝 났습니다. 위치: System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) 위치: System.IO.__Error.WinIOError() 위치: System.IO.FileStream.FlushOSBuffer() 위치: System.IO.FileStream.<>c.<FlushAsync>b__117_0(Object state) 위치: System.Threading.Tasks.Task.InnerInvoke() 위치: System.Threading.Tasks.Task.Execute()--- 예외가 throw된 이전 위치의 스택 추적 끝 --- 위치: System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 위치: System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 위치: System.IO.StreamWriter.<FlushAsyncInternal>d__68.MoveNext()--- 예외가 throw된 이전 위치의 스택 추적 끝 --- 위치: System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 위치: System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 위치: System.IO.StreamWriter.<WriteAsyncInternal>d__55.MoveNext() --- 내부 예외 스택 추적의 끝 --- 위치: System.Threading.Tasks.Task.WaitAll(Task[] tasks, Int32 millisecondsTimeout, CancellationToken cancellationToken) 위치: System.Threading.Tasks.Task.WaitAll(Task[] tasks, Int32 millisecondsTimeout) 위치: Judge.Program.Main(String[] args)
-
해결됨Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
로그인시 No authorization header
안녕하세요 로그인시에는 인증이 필요하지가 않는데 자꾸 인증 해주는 AuthorizationHeaderFilter 클래스에서 apply 메소드에서 header 값이 없다고 걸립니다.그래서 아래와 같이 401 오류로 로그인이 안됩니다.application.yml 파일은 문제없는거 같은데 뭘 더 확인해봐야 할까요,,,?아래는 Users application.yml 파일입니다.
-
해결됨스프링부트 시큐리티 & JWT 강의
jwt와 실제데이터의 관계
안녕하세요 강의 잘 보고 있습니다.jwt로 인증을 받은 후에 클라이언트가 필요한 데이터를 서버에서 클라이언트로 전송을 할때 그 데이터들이 해커에게 노출이 되면 안될거 같은데 그 데이터들은 따로 암호화가 돼서 전송이 되는건가요?
-
미해결
[강의 신청완료] 무료쿠폰 요청드립니다.
3. 웹개발 코스 [Enterprise Architecture(EA) X 전자정부프레임워크] 신청했습니다.무료쿠폰 요청드립니다.
-
해결됨스프링부트 시큐리티 & JWT 강의
jwt 와 세션ID의 관계
안녕하세요 강의 잘 듣고있습니다.웹페이지가 서버에 처음으로 요청을 보낼때 서버에서 세션ID가 만들어지는 것으로 알고있습니다.JWT토큰은 로그인 요청시에 서버에서 만들어 지는 것이구요그러면 무조건 처음에는 www.naver.com으로 요청을 보내게 되는데 JWT토큰을 사용한다고 해도 세션ID는 만들어 지는 것이겠네요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
Member 테이블 외 DB 생성이 되지 않음
[질문 내용]코드를 어제 새벽부터 계속 확인해보았는데 DB 생성이 되지 않습니다. 강사님과 스프링, DB 버전이 달라서 생기는 오류인가요? 해결 방법을 모르겠습니다.. JPA와 DB 설정, 동작 확인에서 Member 테이블은 생성이 되었습니다. 그러나 도메인 분석 설계 섹션 강의에서 진행한 Orders, category, delivery, item과 같은 테이블이 생성이 되지 않습니다. spring-boot는 3.2.4 버전을, H2의 경우 2.2.224 버전을 사용했으며, JUnit4는 현재 사용중인 springboot와 호환이 되지 않아 JUnit5를 사용하였습니다. 아래 드라이브 링크는 코드 전체 압축파일 입니다!https://drive.google.com/file/d/1_Xithr3ZMw4MzcHRz1E2TDypWM0c-_Ry/view?usp=sharing
-
미해결스프링 핵심 원리 - 기본편
빈 등록과 의존관계 주입 순서
스프링 빈과 의존관계 주입의 순서에 대해 질문드리고자 합니다. @ComponentScan에 의해 스프링 빈을 등록하고, @Autowired를 통해 의존관계 자동 주입이 이뤄진다고 하셨습니다. 그런데, MemberServiceImpl 객체가 생성되기 위해서는 우선 의존관계 주입이 이뤄져야 합니다(생성자 호출). 순서를 따지자면 @Autowired에 의해 의존관계 자동 주입 -> 객체 생성 -> 스프링 빈으로 등록이라고 생각하는데요. (1) 스프링 빈 등록 (2) 의존관계 주입이라는 두 과정은 순서가 없이 섞여서 진행되는 것인지, MemoryMemberRepository와 RateDiscountPolicy와 같이 의존관계 주입이 필요없는 모든 빈을 등록하고 이후에 의존관계 주입이 필요한 클래스에 대해 의존관계 주입과 스프링 빈 등록이 섞여서 진행되는 것인지, 스프링 빈 등록과 의존관계 주입의 순서를 따지는게 큰 의미가 없는 것인지에 대해 여쭤보고자 합니다. 이전 강의에서 두 과정이 순서대로 일어난다? 섞여서 일어난다? 라는 강의를 들었던 것 같은데 이 부분이 헷갈려서 질문드립니다.
-
미해결Tailwind CSS로 만드는 멋진 웹 UI 스타일링
섹션1 Animation에서 실습에 활용되는 svg 파일이 images 폴더 안에 안 들어 있습니다.
섹션1 Animation에서 실습에 활용되는 svg 파일이 images 폴더 안에 안 들어 있습니다. 확인 부탁드려요
-
미해결스프링 핵심 원리 - 기본편
메서드 뿐만 아니라 클래스 자체를 스프링 빈으로 등록 가능한가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요, 섹션 5의 "컴포넌트 스캔과 의존관계 자동 주입 시작하기" 강의 듣다가 궁금증이 생겨서 글 남깁니다.이전 강의들에서 @Configuration 이 붙은 클래스를 구성 정보로 등록하고,해당 클래스 내부의 @Bean 이라는 애너테이션이 붙은 메서드들을 스프링 빈에 등록한다고 이해했습니다. 근데, 구성 정보로서 등록할 클래스 앞에 @ComponentScan 애너테이션을 붙이고,스프링 빈으로 등록할 클래스 앞에 @Component 애너테이션을 붙이는 부분이 잘 이해가 되지 않습니다. 스프링 컨테이너에 빈으로 등록할 수 있는 건 메서드(@Bean 처럼) 뿐만 아니라,클래스 자체(@Component) 를 통째로 빈으로 등록할 수 있는건가요? 만약 클래스 자체를 통째로 빈으로 등록할 수 있다는 말씀이시라면,@Component 애너테이션이 붙은 클래스 내부에 있는 모든 메서드들과 변수들을 자동으로 빈으로 등록한다는 것이고,이것들을 .getBean() 메서드를 통해 조회할 수 있다는 것인가요?
-
미해결문과생도, 비전공자도, 누구나 배울 수 있는 파이썬(Python)!
함수의 정의/호출 관련 질문
3.1강 함수의 정의/호출 강의 20분 18초 관련 문의드립니다.이렇게 설정했을 때, 왜 wow_f 의 결과 값은 출력이 안될까요?
-
해결됨코딩은 실전이다! - Git알못을 위한 깃린이코스(Git, Github 실습위주)
slack 초대 부탁드립니다
ejsong25@gmail.com 입니다 갑사합니다:)
-
해결됨김영한의 실전 자바 - 중급 1편
Class 클래스 강의 질문
class 클래스 강의에서 나온 클래스 생성 할때 쓰는 .getDeclared constructer().newInstance() 와new 키워드로 객체인스턴스 생성하는게 어떤 차이점이 있나요 ?
-
미해결스프링 핵심 원리 - 고급편
쓰레드로컬이 제공하는 별도의 저장소와 싱글톤의 관계
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요, 쓰레드 로컬이 가지는 별도의 보관소 개념이 정확하게 이해가 되지 않아 질문을 남깁니다. 1. 쓰레드 로컬이 만드는 별도의 전용 보관소라는 것은 하나의 객체를 생성하여 그곳에 정보값을 저장해 두었다가 해당 쓰레드가 싱글톤으로된 객체의 정보값을 호출할 때마다 참고하게 되는 것인지, 아니면 다른 방식으로 설계된 것인지 궁금합니다. 2. 결국 특정 쓰레드마다 별도의 저장소를 통해 정보값을 보관하게 한다면, 그리고 그 보관하는 것이 객체를 생성하는 방식이라면, 동시성 문제를 발생시키는 싱글톤 대신 프로토타입을 사용하면 되는 것이 아닌가 생각이 드는데 프로토타입이 아닌 쓰레드 로컬로 해결해야하는 이유가 무엇인지 궁금합니다.
-
해결됨[취업폭격기] 공공기관 전산직(IT) 취업 준비를 위한 정규과정 (기초~고급)
깃허브 권한요청
방금 구글폼 작성하였습니다.권한 승인해주시면 감사하겠습니다. 안녕하세요 취업폭격기 제로미니 입니다.정규과정을 신청하신분은 Zeromini-lab 권한, Zeromini Git Hub 취업자료 권한 신청 관련하여디스코드 (제로미니 IT취업 공부방) [초대장] 을 통해 '취업폭격기 제로미니'에게 다이렉트 메시지를 남겨주시면내용을 안내해드리도록하겠습니다!
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
docker ex -it mariadb /bin/bash
docker ex -it mariadb /bin/bash이후에 mysql 명령어를 치면mysql: Command not found 에러가 나옵니다,.
-
해결됨스프링 핵심 원리 - 기본편
5분대부터 말씀하신 테스트에 대한 질문
안녕하세요 영한님. 강의 너무 잘 듣고 있습니다.다름이 아니라 강의 듣다가 테스트 코드의 중요성을 말씀해주셨는데, 궁금한 점이 있어서요 단위 테스트를 작성하는 것이 좋다단위 테스트는 스프링이나 DB를 활용하는 것이 아니다이렇다면, 단위 테스트할 때는 Fake 객체를 사용해서 단위테스트를 작성해야 하는 걸까요? 인터페이스로 역할과 구현이 분리된 상태에서 MemberRepository의 구현체를 프로덕션에서 사용하는 MemoryMemberRepository, 테스트 환경에서 사용할 FakeMemberRepository로 분리해서 사용하는 걸까? 하는 궁금함이 있어 여쭈어봅니다 항상 좋은 강의 감사합니다!!
-
미해결Next + React Query로 SNS 서비스 만들기
Next와 React-query의 prefetch에 대해
안녕하세요 ! Next14 버전과 tanstack-qeury를 이용해 프로젝트를 진행하던 도중 궁금한 점이 생겨 질문드립니다. Next의 서버 컴포넌트에서 data를 prefetching 하여 사용하려면 다음과 같은 단계를 밟아야 하는 것으로 알고 있습니다. 1. 서버 컴포넌트에서 queryClient.prefetchQuery를 사용해 데이터를 불러오고 이를 dehydrate하여 HydrationBoundary 내에 state로 넘겨준다. 2. 데이터를 사용하는 컴포넌트에서 useQuery로 동일한 데이터를 불러오면 해당 데이터는 prefetch 된 상태로 넘어와 이를 사용한다. 현재 이를 토대로 아래 예시코드와 같이 작성하여 사용중입니다. 이 때 하위 컴포넌트에서 prefetch한 데이터를 사용하려면 useQuery를 써야하기에, 'use client' 를 사용해야하고, 그렇게 되면 그 하위 컴포넌트도 전부 Client Boundary에 들어오게 되는 것으로 알고있는데, 그럼 "Next를 사용하며 얻을 수 있는 장점이 줄어들지 않나 ?" 라는 의문이 생겼습니다. 제가 사용법을 잘못 알고있다거나 Next의 개념에 대해 부족한걸까요 ? 또, HydrationBoundary로 감싸지 않고 queryClient.getQueryData를 이용해 직접 데이터를 가져와 이를 props로 전달해도 기능은 정상적으로 작동하는데, 이 둘의 차이점이 정확히 무엇인가요 ? // 서버 컴포넌트 import { HydrationBoundary, dehydrate, QueryClient, } from "@tanstack/react-query"; import { QUERY_KEY } from "@/constants"; import { requestGetPushAlarmList } from "@/apis/notification"; import NotificationClient from "./Client"; export default async function Page() { const queryClient = new QueryClient(); await queryClient.prefetchQuery({ queryKey: [QUERY_KEY.PUSH_LIST], queryFn: () => requestGetPushAlarmList({}), }); // const { rows: pushList } = queryClient.getQueryData([ // QUERY_KEY.PUSH_LIST, // ]) as unknown as Rows<PushAlarm>; 예시 2. getQueryData로 데이터에 접근 return ( <HydrationBoundary state={dehydrate(queryClient)}> <NotificationClient /> </HydrationBoundary> // <NotificationList pushList={pushList} /> 예시2. props로 직접 데이터 전달 ); } // 하위 컴포넌트 "use client"; import { useQuery } from "@tanstack/react-query"; import { requestGetPushAlarmList } from "@/apis/notification"; import { QUERY_KEY } from "@/constants"; import NotificationList from "./_components/NotificationList"; import ScreenBox from "@/components/ui/ScreenBox"; import Empty from "@/components/ui/Empty"; export default function NotificationClient() { const { data } = useQuery({ queryKey: [QUERY_KEY.PUSH_LIST], queryFn: () => requestGetPushAlarmList({}), select: (data) => data.rows, }); return ( <> {!data?.length ? ( <ScreenBox.CenterBody> <Empty message="알림이 없습니다." /> </ScreenBox.CenterBody> ) : ( <NotificationList pushList={data} /> )} </> ); }
-
미해결리눅스 입문 - 개념으로 탄탄히!!
초중급수준 강의명
입문완강후 강사님의 초중급수준의 강의를 추천해주세요
-
해결됨[React / VanillaJS] UI 요소 직접 만들기 Part 1
학습자료 관련해서 질문있습니다.
안녕하세요.인제 부트캠프를 하고 거의 끝나가면서 부족함을 느껴서 강의를 신청하게 되었는데요. 강의자료를 다운로드 받아서 설치해보니 아마 완성본(?) 인것 같더라구요. 그래서 route 설정할때 폴더 트리를 보고 내용도 지우고 진행하려고 합니다. 혹시 이렇게해도 앞으로 강의 나가는데 문제가 없을까해서 문의드립니다.예를 들면 현재 이런 상태입니다.