묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
MemberController에서 Memberservice를 new로 생성하면 문제가 되는 이유
음.. 이유에 대해서 생각해보자면 new로 생성된 한곳에 대해서만 작업을 해야하는데 여러개 생기면 그게 안되는거잖아요? 그래서 문제가 생기는건 알겠는데뭔가 제대로 설명을 못하겠어요..누군가 저걸 물어보면 뭐라고 대답해줘야할까요?
-
해결됨프론트엔드 개발자를 위한, 실전 웹 성능 최적화(feat. React) - Part. 1
이미지 preload 컴포넌트 preload 차이 질문드립니다.
컴포넌트 preload 는 원하는 시점에 import만 해오면 preload 되지만 이미지 preload는 image객체의 src프로퍼티를 통해 네트워크로 이미지를 불러와서 브라우저에 캐싱되는 단계까지 이루어져야 이미지 preload라고 할 수 있는건가요...??
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
중첩현상 설명에서..
Test1.h에 #include 등의 내용이 들어간 상태에서 cpp 파일에 Test1.h를 include를 하게 되면 중첩현상 발생 + 해당 cpp 파일의 작업량 증가가 일어난다고 설명해주셨는데 해당 cpp 파일에도 동일한 #include가 들어있다고 가정한 상태에서 이런 현상이 발생하는 것인가요, 만약 맞다면 cpp 파일 내에 #include가 아예 들어있지 않다면 중첩현상이나 작업량 증가는 발생하지 않게 되는 것인가요?
-
해결됨그림으로 쉽게 배우는 운영체제
폴링 방식 관련
안녕하세요 폴링 방식과 관련해 궁금한 것이 있습니다! 폴링 방식에서 CPU는 입출력 작업이 들어오면 입출력 관리자에게 (입출력을 처리하라는) 입출력 명령을 내린다고 하셨는데 저는 이해를 ‘입출력 작업(‘0’키 눌림)이 들어오면 입출력 관리자에게 (화면에 ‘0’을 띄워)라는 명령을 내린다‘ 이런 식으로 했습니다 그런데 왜 언제 입출력 명령이 완료될지 알 수 없거나, 혹은 키 입력이 들어왔냐는 확인을 계속 해야 하는 것인지 잘 모르겠습니다;;
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
static변수
memberRepository라는 인터페이스가 있고 이를 구현하는 MemoryMemberRepository가 있어요구현체인 MemoryMemberRepository에 선언된 static변수는 memberRepository를 상속받는 모든 class들의 공유자원인건가요? 그러니까 예를들어 memberRepository를 구현하는 Member2Repository가 있다고 한다면 여기서도 1. memorymemberRepository에 선언된 static변수가 공유되나요? 2. 그리고 MemberServiceTest의 176번째줄... 즉, MemoryMemberRepository mr = new MemoryMemberRepository(); 이부분이요 여기서도 new로 생성되어있고 memberservice에서도 new로 생성되어있지만 static변수이기때문에 new MemoryMemberRepository로 생성한 변수에 대해서는 자원이 공유되는게 맞죠?!
-
해결됨네트워크, 그림으로 이해하자(2022ver.)
LAN과 사설 네트워크 관련
안녕하세요 좋은 강의를 해주셔서 감사합니다 강의를 들으면서 궁금한 점들이 생겼는데 1. 사설 네트워크와 LAN, 공용 네트워크와 WAN은 서로 비슷한 개념인가요? 분류 기준이 확실히 다른 것 같긴 하지만 사설 네트워크의 사설 IP가 NAT을 통해 라우터가 할당받은 공용 IP로 전환되고 인터넷에 접속 LAN과 인터넷 공유기(라우터 기능 중 NAT 기능이 특화된 기기)를 연결해 ISP의 서비스를 통해 인터넷 접속 이 2개가 굉장히 비슷하게 생각되어서요... 2. 공용(인터넷) 네트워크의 구성요소는 인터넷 + 라우터로 이루어져있는 것이 맞을까요? 3. 사소한 것이긴 하지만 16페이지에 LAN은 소속 기기들을 모두 포함하는 그림으로 되어있는 반면, WAN은 소속 LAN들을 포함하지는 않고 중심에서 연결되는 그림으로 되어있는데 차이점이 있는 것인가요? 4. 16페이지에서 공유기를 통해 NAT 기능이 되어서 공유 IP로 변환이 된 것 같은데 왜 공유기 그림이 아닌 WAN 그림에 ISP 항목이 들어가 있는지도 궁금합니다...
-
미해결데이터 분석 SQL Fundamentals
postgres db 연결 문제
postgres 비밀번호를 가이드대로 postgres로 설정했는데 비밀번호 에러가 나는 거 같습니다 이럴 경우 어떻게 해야 db가 연결이 될까요? - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
fetch join 및 batch size 관련해서 질문드립니다.
테이블 구조에서 한 entity에 @OneToMany가 2개 존재할때 2개모두 fetch join으로는 못가져오는것으로 알고있습니다. 그래서, 하나는 fetch join으로 가져오고 하나는 batch size를 통해 최적화 하려고하는데, 만약 batch size를 통해 가져오는 엔티티에 @ManyToOne의 데이터가 존재하는경우 어떻게 가져와야하는걸까요?? A <-(ManyToOne) B <- (OneToMany) C <-(ManyToOne)D 이런 테이블 구조에서 데이터를 한번에 긁어야할때가 궁금합니다 일반적인 쿼리에서는 서브쿼리를 활용해서 가져올텐데... 이부분은 아무리 찾아봐도 나오질않네요 ㅠㅠ
-
미해결배달앱 클론코딩 [with React Native]
[MacOS]cocoapods 설치 안됨
% sudo gem install cocoapods Successfully installed cocoapods-1.11.3 Parsing documentation for cocoapods-1.11.3 Done installing documentation for cocoapods after 1 seconds 1 gem installed 이런식으로 뜨고 따로 에러가 안떠 프로젝트를 만들었습니다. 만들 던중 ✖ Installing CocoaPods dependencies (this may take a few minutes) ✖ Installing CocoaPods dependencies (this may take a few minutes) error Error: Failed to install CocoaPods dependencies for iOS project, which is required by this template. 라는 에러가 뜨더군요 CocoaPods가 제대로 설치가 안된거 같습니다. 그래서 프로젝트 파일/ios 이동 후 ls명령어로 확인 했을 때 .xcworkspace가 없습니다.. 그래서 몇시간동안 구글랑하며 찾았는데 다 안되더군요 그래서 ~/ios 폴더에서 pod install 해주니가 쭉 설치 되더니 .xcworkspace가 생겼습니다.. ㅜㅜ
-
미해결데이터 분석 SQL Fundamentals
맥에서 한글로 설치할 때 ko_KR.UTF-8로 해야 하나요? KOREAN-KOREA가 없습니다ㅜ
맥에서 한글 설치할 때 ko.KR.UTF-8로 해야 되나요? 윈도우처럼 KOREAN-KOREA 가 없습니다
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
안녕하세요 인터셉터관련 질문드립니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요 강의 듣다가 인터셉터에 대해 궁금점이 생겨 질문드립니다. 원래 처음엔 파라미터를 조작해서 값을 넘기는 경우를 어떻게 방지할까 고민했었습니다 (member/1/delete) 이런식으로 다른사람이 저의 고유아이디를 파라미터로 넘겼을때 제 계정이 삭제될수도 있기에 로직을 짜서 이를 방지하고자 했습니다. 이런식으로 세션에있는 (로그인되어있는)회원의 아이디와 파라미터로 넘기는 아이디로 회원을 찾아서 둘을 비교하여 일치하지 않을시에 "본인만 삭제가능합니다" 라는 경고창을 띄우고 홈화면으로 이동시키고자 했습니다. 코드는 잘동작했는데요 문제는 홈화면으로 이동까지는 잘되는데 컨트롤러에 남아있는 나머지코드들이 그대로 실행되어 계정이 삭제가 되더군요 안그래도 매서드들마다 저런 검증로직을 매번 추가하는게 비효율적인거같아 어떻게 통합하는 방법이 없을까 고민하다가(스태틱 매서드로 뽑아서도 사용해봣는데 결국은 매번호출해야하기에) 인터셉터 강의들은게 생각나서 컨트롤러 호출전에 검증로직을 수행하고자 했습니다. 강의중간에 11분쯤 Object handler를 로그에 찍어보시면서 넘어온 컨트롤러에 있는것들을 꺼내서 사용할수있다고 하셔서 HandlerMethod hm = (HandlerMethod) handler; 여기서 모든 매서드들을 다 호출해서 살펴봣는데 방법을 모르겟어서 질문드려요. 저의 상황에서는 deleteMemberr매서드안의 loginMember, id, request, response가 되겟네요 저는 위에 검증하는 로직을 인터셉터에서 수행하고 싶어서 id와 loginMember를 인터셉터의 prehandle 메서드에서 Object handler로 얻고자 했었습니다. 질문을 좀 정리하자면.. <1> 파라미터로 위와같이 값을넘겨서 다른회원의 정보를 수정하거나 삭제하는걸 방지하고 싶습니다. 떄문에 로그인한 회원의 정보와 파라미터값(보통 아이디)으로 찾은 회원의 정보를 비교하여 불일치시 메세지를 띄우고 홈화면으로 이동시키려고 로직을 짯구요 로직은 정상작동하나 페이지를 홈으로 이동시켰음에도 해당 메서드의 나머지 코드들이 수행되기에(이 예제에선 삭제) 이 상황에선 어떻게 코드를 수정해야할지 궁금합니다. <2> 만약에 <1>에서 제가 원하는 결과를 얻었다고 가정해도 매번 메서드마다 저 로직을 넣는게 좀 비효율적인거 같았고 떄문에 스태틱메서드를 따로 뽑아서 코드를 좀 간결하게 만들어보긴했으나 여전히 매번 스태틱검증매서드를 호출해야하기에 고민이 있었습니다 또한 <1>에서 처럼 경고창을 띄우고 페이지를 이동시켰음에도 컨트롤러의 나머지 코드들이 수행되어 삭제가 되기에 인터셉터를 사용해서 컨트롤러 호출전에 위의 검증로직을 돌리고 싶었습니다 그 과정에서 제가 작성한 저 검증로직을 돌리려면 저 deleteMemberr의 파라미터 정보를 알아야했고(id, loginMember) 강의를 다시 복습하다가 11분경에 말씀하신 handler에서 정보를 뽑을수있다는걸 보고 .을 찍으면 나오는 모든 매서드들을 실험해봣는데 원하는데로 파라미터 들을 뽑아내지못하였습니다. 어떻게 문제를 해결해야할지 궁금합니다. <3> 제가 생각한 위의 두가지 방법이 잘못된 방법인건지 더 나은 방법이 있는지 알고싶습니다 <1>, <2>의 궁금증은 결국 파라미터로 위와같이 값을넘겨서 다른회원의 정보를 수정하거나 삭제하는걸 방지하고 싶습니다 이문제 떄문인데 어떻게 처리하는지 너무 궁금합니다. 열심히 구글링해보았는데 원하는 정보들을 얻지못했습니다.. 긴글 읽어주셔서 감사합니다
-
미해결
@Repository와 @Mapperscan
제가 게시판 만들기 프로젝트를 하다가 궁금한게 있는데요 MapperScan 의 대상이라는 것은 @Repository 어노테이션을 통해 해당 인터페이스가 저장소라는 것을 명시할 수 있다. 이 말인 즉 @Repository 어노테이션이 붙여지면 mapperscan 대상자라는 말인가요?
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
혹시 만든 Splash Screen을 적용하는방법..
해당 프로젝트에서 만든 Splash Screen을 다른프로젝트를 실행시킬때 적용할수 있도록하는 과정이.. 혹시 강의내용중에 있을까요? 현재 블로그웹앱 까지 다보고 Staratefulwidget 들을차례인데 아직까지 나오지않아서요..
-
해결됨Flutter + Firebase로 넷플릭스 UI 클론 코딩하기 [무작정 플러터]
220614 carousel_slider.dart
플러터 3.0 버전 carousel_slider: ^4.1.1 import 'package:carousel_slider/carousel_slider.dart'; import 'package:flutter/material.dart'; import 'package:netflixapp/model/model_movie.dart'; class CarouselImage extends StatefulWidget { final List<Movie>? movies; CarouselImage({Key? key, required this.movies}) : super(key: key); @override State<CarouselImage> createState() => _CarouselImageState(); } class _CarouselImageState extends State<CarouselImage> { List<Movie>? movies; List<Widget>? images; List<String>? keywords; List<bool>? likes; int _currentPage = 0; late String _currentKeyword; @override void initState() { super.initState(); movies = widget.movies; images = movies?.map((m) => Image.asset('./images/' + m.poster)).toList(); keywords = movies?.map((m) => m.keyword).cast<String>().toList(); likes = movies?.map((m) => m.like).cast<bool>().toList(); _currentKeyword = keywords![0]; } @override Widget build(BuildContext context) { return Container( child: Column( children: [ Container( padding: EdgeInsets.all(20), ), CarouselSlider( items: images, options: CarouselOptions( onPageChanged: (index, reason) { setState( () { _currentPage = index; _currentKeyword = keywords![_currentPage]; }, ); }, ), ), Container( child: Text(_currentKeyword), ), ], ), ); } }
-
미해결jQuery로 구현하는 NFT 마켓플레이스 (이더리움, 폴리곤)
getNftToken 함수 관련해서 질문이 있습니다.
이 영상에서는 제가 작성한 스마트컨트랙트에서 발행한 NFT만 보여주는데 opensea testnet 에서 확인해보면 제 지갑에 있는 모든 NFT를 보여주고 있습니다. 제 질문은 getNftToken 함수에서 지갑의 모든 NFT를 읽어오는 건지 아님 현재 작성/배포한 스마트컨트랙트에서 발행된 NFT만 읽어오는건지 궁금합니다. 후자라면 opensea testnet에서 모든 NFT를 보여주는것처럼 구현하고싶으면 어떤함수를 써야하나요? 아님 오픈씨에있는 NFT를 읽어와야 하나요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
jpa활용(1) 18강 회원기능테스트 강의
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]h2 db의 in-memory사용법에 대해 강의마지막에 설명해 주셨습니다. db가 꺼져있더라도 테스트를 실행해 확인해볼 수 있게요. 그런데 강의에서는 connection을 어디에서 얻어오는지 consol창에서 확인가능했는데 (ex : "jdbc:h2:mem:testdb") 제 콘솔창에서 안보여서요. 혹시 IntelliJ의 유료 무료버전 의 차이인걸까요??
-
미해결태블로 레벨UP
테이블 계산에서
강의 3:40초 부분에서계산유형 두번째 단에서 합계->평균 변경하려고 하는데 클릭 안되는데 원인을 알 수 있을까요? LAST 필터도 걸리지가 않아서요...
-
해결됨[SharePoint] Microsoft List로 우리 회사 송금 요청 시스템 만들기
새 보기 만들기 링크값
새 보기 만들기를 통해 보기 화면을 다르게 구성하여 쉐어포인트 사이트에 링크로 연결할때 링크 값은 브라우져상의 주소 값을 적용하면 될까요?
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
BFS로의 풀이에 대해 질문드리고 싶습니다.
안녕하세요 강사님, 강의를 듣다가 동전 문제를 BFS로 풀 수 있을거 같아 이렇게 풀었는데, 괜찮은 코드인지 여쭤보고 싶습니다. import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.*;public class Main { static int N, M, count; static int[] arr; static Queue<Integer> queue = new LinkedList<>(); public void input() throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); N = Integer.parseInt(st.nextToken()); arr = new int[N]; st = new StringTokenizer(br.readLine()); for (int i = 0; i < N; i++) { arr[i] = Integer.parseInt(st.nextToken()); queue.offer(arr[i]); } st = new StringTokenizer(br.readLine()); M = Integer.parseInt(st.nextToken()); } public int BFS() { while (!queue.isEmpty()) { count++; int len = queue.size(); for (int i = 0; i < len; i++) { int value = queue.poll(); for (int X : arr) { int data = value + X; if (data == M) return count+1; // 동전의 값을 Queue에 삽입 전에 체크하기 때문에 +1를 추가해서 리턴 if (data < M) queue.offer(data); } } } return count; } public static void main(String[] args) throws Exception { Main main = new Main(); main.input(); System.out.println(main.BFS()); }}
-
해결됨홍정모의 따라하며 배우는 C언어
프로그램이 파일의 EOF를 어떻게 찾나요?
챕터 8.9 10:30 안녕하세요~ 강의 잘 듣고 있는 중에 궁금한게 있어서 질문합니다! while (( c = getc(file)) != EOF) 17번째 줄 코드인데요. 코드 뜻은 파일 내용 중 EOF를 만날 때까지 문자 한 개씩 변수 c에 대입이잖아요? 근데 텍스트 파일에 EOF를 적어주지도 않았고, 보이지도 않는데 어떻게 프로그램이 EOF를 인식할 수 있는건가요?