묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨그림으로 쉽게 배우는 운영체제
폴링 방식 관련
안녕하세요 폴링 방식과 관련해 궁금한 것이 있습니다! 폴링 방식에서 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를 인식할 수 있는건가요?
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
DataFrame Groupby 시 Aggregation 관련
안녕하세요? 강의 잘 듣고 있습니다. DataFrame Groupby 시 Aggregation 을 위해 dictionary 를 적용하는 경우, 동일한 key 값에 두 가지 function 을 할당하여 생기는 문제에 대한 해결책으로 named aggregation 을 사용하셨는데요, 리스트를 사용하는 것이 좀 더 간단하지 않을까요? 예) agg_format = {'Age' : 'max', 'Age' : 'mean' , 'Fare' : 'mean' } titanic_df.groupby('Pclass').agg(agg_format) 위와 같이 사용할 경우 'Age' 키값에 'max' 가 조회되지 않는 문제가 있지만, agg_format = {'Age' : ['max' ,'mean'] , 'Fare' : 'mean' } 이와 같이 list를 value 값으로 주면 named aggregation 보다 코드가 간결해지며, display 시 max, mean 등 함수명이 column에 표기되므로 시각적으로도 더 나아 보입니다. 또한, 하나의 Aggregation 함수만 사용하는 경우에도, 아래와 같이 리스트를 사용하면 각 Column에 적용된 함수가 무엇인지 명시적으로 display 되게 할 수 있습니다. agg_format = {'Age' : ['max' ] , 'Fare' : ['mean'] }
-
미해결스프링과 JPA 기반 웹 애플리케이션 개발
규정엔 맞지 않지만.. 환불가능할까요?
안녕하세요. 유튜브로 종종 취업썽과 QnA 답해주시는 영상을 보며 자주 동기부여를 받고 있어요. 다름이 아니라 환불을 부탁드린 이유는 기초지식이 부족해서였습니다. 미리보기에서 공지해주시기도 했지만, 중간중간 어떤 동작원리로 돌아가는지 감을 못잡겠더라구요 😣 규정상 프로젝트를 다운로드했고 8강의를 들었기에 환불이 어렵다는 건 잘 알고 있습니다만.. 다른 강의를 듣거나 환불이 가능할까요?
-
미해결홍정모의 따라하며 배우는 C언어
The argument has type 'unsigned long'
안녕하세요! 맥 터미널로 공부하고 있는 학생입니다! 다름이 아니라 sizeof 연산자 사용 부분에서 printf("%u", sizeof(unsigned int)); 를 출력하면 format specifies type 'unsigned int' but the argument has type 'unsigned long'라는 오류 메시지가 뜹니다! 바쁘시겠지만 잘부탁드리겠습니다!