묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 핵심 원리 - 기본편
람다식 화살표는 어떻게 입력하는건가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 인터넷 검색해봐도 답이안나오네요 람다식이 뭔지만나오고입력어떻게하는거죠?
-
미해결Vue3 완벽 마스터: 기초부터 실전까지 - "실전편"
header값이 들어오지 않습니다
_limit:3을 줬는데headers에 x-total값이 나오지 않습니다ㅜㅜ!PostListView.vue<template> <div> <h2>게시글 목록</h2> <hr class="my-4" /> <div class="row g-3"> <div v-for="post in posts" :key="post.id" class="col-4"> <PostItem :title="post.title" :content="post.content" :create-at="post.createAt" @click="goPage(post.id)" ></PostItem> </div> </div> <nav class="mt-5" aria-label="Page navigation example"> <ul class="pagination justify-content-center"> <li class="page-item"> <a class="page-link" href="#" aria-label="Previous"> <span aria-hidden="true">«</span> </a> </li> <li class="page-item"><a class="page-link" href="#">1</a></li> <li class="page-item"><a class="page-link" href="#">2</a></li> <li class="page-item"><a class="page-link" href="#">3</a></li> <li class="page-item"> <a class="page-link" href="#" aria-label="Next"> <span aria-hidden="true">»</span> </a> </li> </ul> </nav> <hr class="my-5" /> <AppCard> <PostDetailView :id="2"> <!-- index.js에서 PostDetailView안에 props가 true이면 화면에 나옴 --> </PostDetailView> </AppCard> </div> </template> <script setup> import PostItem from '@/components/posts/PostItem.vue'; import PostDetailView from '@/views/posts/PostDetailView.vue'; import AppCard from '@/components/AppCard.vue'; import { getPosts } from '@/api/post'; import { ref } from 'vue'; import { useRouter } from 'vue-router'; const router = useRouter(); const posts = ref([]); const params = ref({ _sort: 'createAt', _order: 'desc', _limit: 3, }); // pagination const fetchPosts = async () => { try { const { data } = await getPosts(params.value); posts.value = data; } catch (error) { console.error(error); } }; fetchPosts(); const goPage = id => { // router.push(`/posts/${id}`); router.push({ name: 'PostDetail', params: { id, }, }); }; </script>
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
MemberForm 대신에 domain 내 Member가 있는데 이것을 사용하면 안되나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예[질문 내용]위 질문에 대해 김영한님이 옛날에 답해주신 내용이,create(Member member)처럼 사용이 가능은 하나, 다양한 정보를 필요로 하는 경우가 있어 MemberForm 클래스를 따로 만드는 게 낫다는 말씀이었습니다. 여기서 궁금한 점이,MemberForm 클래스가 controller 패키지에 있어도 되는건가요?, 매핑 시 스프링 컨테이너에서 controller 를 찾는다고 하던데 이 뜻이 @Controller가 붙은 클래스를 찾는다는 의미인거지 Controller 패키지를 조사한다는 의미는 아닌거죠?그래서 MemberForm도 controller 패키지 내부에 있을 수 있는거고.. 제가 이해한게 맞나요? 1번 질문과 유사한 질문입니다만,Mapping 시 @Controller 가 붙은 클래스를 전부 조사하여 해당 주소에 Maaping된 메서드가 있으면 호출하는 방식이면 클래스명은 따로 @Controller 조사할때 상관은 없는거죠?
-
해결됨[중급편] 코인 가격 모니터링 앱 제작 (Android Kotlin)
관심있는 코인/관심없는 코인 업데이트 오류
하트를 누르면 값이 바뀌긴 하나 화면에 반영이 되진 않습니다.깃허브 주소https://github.com/Hju95/coin
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 레딧 사이트 만들기(NextJS)(Pages Router)
댓글 리스트 불러오는 핸들러에서
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 이 부분에서 Comment DB에 postID가 언제 저장된 것일까요??댓글 생성 부분에서는 Post 정보만 저장하지 않았나요?? Post정보를 저장하면 postId가 자동저장되는건가요??댓글을 생성하면 해당 댓글의 postId는 Null값이 아닌가요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
강의 후반쯤에 편의기능 메서드들을 알려주시는데
service 메서드 안에서 한 줄이며 끝날 것을ex) response.setHeader("Content-Type", "text/plain;charset=utf-8");편의 기능을 쓰기 위해 함수를 만들어서 service메서드 안에서 했던 것과 같이 일일이 다 설정해주고private void content(HttpServletResponse response) { //Content-Type: text/plain;charset=utf-8 //Content-Length: 2 //response.setHeader("Content-Type", "text/plain;charset=utf-8"); response.setContentType("text/plain"); response.setCharacterEncoding("utf-8"); //response.setContentLength(2); //(생략시 자동 생성) }다시 service메서드 안에서 호출해주기까지 하는데 더 코드를 많이 쓰고 귀찮은 것 같은데 이게 왜 편의 기능인가요??
-
미해결
실행 시 연결 페이지 오류
이 코드를 활용해서 진행하고 있는데요 js파일에서 실행을 시키면 크롬창에서 제가 가지고 있는 파일로 링크가 나옵니다ㅠㅠ 도와주세요ㅠ import Grid from 'tui-grid'; import 'tui-grid/dist/tui-grid.css'; const options = { el: document.getElementById('grid'), columns: [{ header: 'Name', name: 'name' }, { header: 'Artist', name: 'artist' }, { header: 'Price', name: 'price' }, { header: 'Genre', name: 'genre' } ], data: [{ name: 'Beautiful Lies', artist: 'Birdy', price: 10000, genre: 'Pop' }] }; const grid = new Grid(options); // 그리드 인스턴스 생성 const rowData = [{ name: 'X', artist: 'Ed Sheeran', price: 20000, genre: 'Pop' }, { name: 'A Head Full Of Dreams', artist: 'Coldplay', price: 25000, genre: 'Rock' } ]; rowData.forEach(row => { grid.appendRow(row); });
-
미해결[2026년 출제기준] 웹디자인개발기능사 실기시험 완벽 가이드
공지사항 갤러리가 안먹혀요 ㅠ
<!DOCTYPE html><html lang="ko"><head><meta charset="UTF-8"><title>Document</title><link rel="stylesheet" href="css/style8.css"></head><body><div class="container"><div class="left"><header><div class="header-logo"><a href="#"><img src="images/logo-header.png" alt=""></a></div><div class="navi"><ul class="menu"><li><a href="#">menu</a><div class="sub-menu"><a href="#">sub-menu</a><a href="#">sub-menu</a><a href="#">sub-menu</a><a href="#">sub-menu</a></div></li><li><a href="#">menu</a><div class="sub-menu"><a href="#">sub-menu</a><a href="#">sub-menu</a><a href="#">sub-menu</a><a href="#">sub-menu</a></div></li><li><a href="#">menu</a><div class="sub-menu"><a href="#">sub-menu</a><a href="#">sub-menu</a><a href="#">sub-menu</a><a href="#">sub-menu</a></div></li><li><a href="#">menu</a><div class="sub-menu"><a href="#">sub-menu</a><a href="#">sub-menu</a><a href="#">sub-menu</a><a href="#">sub-menu</a></div></li></ul></div></header></div><div class="right"><div class="slide"><div><a href="#"><img src="images/slide-01.jpg" alt=""></a><a href="#"><img src="images/slide-02.jpg" alt=""></a><a href="#"><img src="images/slide-03.jpg" alt=""></a></div></div><div class="items"><div class="news"><div class="tab-inner"><div class="btn"><a href="#">공지사항</a></div><div class="tab1"><a href="#">운영위원장 후보자 추천을 받고 있습니다.<b>2020.01.09</b></a><a href="#">홈커밍데이 진행위원회 결과를 다운로드 받으세요.<b>2020.01.07</b></a><a href="#">카드결제 무이자 이벤트 한시적 10월 20일까지<b>2019.12.31</b></a><a href="#">보안강화 시스템 작업 안내 공지<b>2019.12.20</b></a><a href="#">부여 가을연꽃축제 10주년 콘서트 축제<b>2019.12.20</b></a></div></div></div><div class="gallery"><div class="tab-inner"><div class="btn"><a href="#">갤러리</a></div><div class="tab2"><a href="#"><img src="images/gallery-01.jpg" alt=""></a></div></div></div><div class="shortcut"><a href="#"><img src="images/shortcut.jpg" alt=""></a></div></div><footer><div class="copy">(주)이스타컴퍼니 | 대표자 : 최종윤 | 개인정보관리책임자 : 이주현 부장<br> 사업장주소 : 인천광역시 중구 개항로 6층 (주)이스타컴퍼니</div><div class="sns"><div><a href="#"><img src="images/sns-01.png" alt=""></a><a href="#"><img src="images/sns-02.png" alt=""></a><a href="#"><img src="images/sns-03.png" alt=""></a></div><div><select><option value="">여주군청 홈페이지</option><option value="">한국관광공사</option><option value="">여행자보험가입</option></select></div></div></footer></div></div><script src="script/jquery-1.12.4.js"></script><script src="script/custum8.js"></script></body></html> @charset "utf-8";body{font-size: 15px;}a{color: #000;text-decoration: none;}.container{}.container>div{ height: 650px; float: left;}.left{ width: 200px;}.right{ width: 800px;}header{}header>div{}.header-logo{ height: 100px; line-height: 130px;}.navi{ margin-top: 30px;}.menu{ padding: 0; width: 90%; margin: auto;}.menu li{ list-style: none; text-align: center; }.menu li>a{ border: 1px solid #000; display: block; padding: 5px; transition: 0.5s;}.menu li:hover>a{ background-color: #000; color: #fff;}.sub-menu{ border: 1px solid #000; display: none;}.sub-menu a{ display: block; padding: 5px; transition: 0.5s;}.sub-menu a:hover{ background-color: #000; color: #fff;}.slide{ width: 800px; position: relative; height: 350px; }.slide>div{ font-size: 0;}.slide>div a{ position: absolute; top: 0; left: 0; opacity: 0; animation: slide 10s linear infinite;}.slide>div a:nth-child(1){ animation-delay: 0;}.slide>div a:nth-child(2){ animation-delay: 3.5s;}.slide>div a:nth-child(3){ animation-delay: 7s;}@keyframes slide{ 0%{opacity: 0;} 5%{opacity: 1;} 35%{opacity: 1;} 40%{opacity: 0;} 100%{opacity: 0;}}.items{ overflow: hidden;}.items div{ height: 200px; float: left; box-sizing: border-box;}.news{ width: 300px;}.tab-inner{}.btn{}.btn>a{ border: 1px solid #000; display: inline-block; padding: 5px; width: 130px; text-align: center; border-radius: 5px 5px 0 0;}.tab1, .tab2{ border: 1px solid #000; height: 160px;}.tab1 a{ display: block;}.tab2 img{ width: 100px;}.gallery{ width: 300px;}.shortcut{ width: 200px;}footer{ overflow: hidden;}footer>div{ height: 100px; float: left; box-sizing: border-box;}.copy{ width: 600px; text-align: center; padding-top: 30px;}.sns{ width: 200px;}.sns div{ text-align: center;}.sns div:first-child{ padding-top: 5px; }.sns div:last-child{ text-align: center; line-height: 35px;}
-
미해결[입문자를 위한 UE5] Part1. 언리얼 엔진 블루프린트
구구단 연습문제 관련 질문입니다..
안녕하세요. 좋은 강의 너무 잘보고 있습니다 !! 다름이아니라 구구단 연습문제를 하는 중에 ForLoop에 대한 질문이 있어서 남깁니다.구구단 예제에서 루프 안에 루프가 돌아가는 것이라고 말씀해주셨는데, 그 개념자체가 잘 이해가 안갑니다ㅠㅠ제 생각으로 위 사진의 노드진행을 보면 결과값이 2*1다음에 3*2, 4*3 ... 이런식으로 나올것 같은데 그게 아니라 B에서 루프가 끝까지 돌고 다시 A로 돌아오게 된다는 그 상황자체가 이해가 안갑니다.. 도와주세요 선생님ㅠㅠ
-
해결됨PM을 위한 데이터 리터러시(프로덕트 데이터 분석)
잘못된 지표에 관하여
안녕하세요 :)제가 선정한 지표가 잘못되거나 문제상황에 최적화되지 않은 지표라는것을 깨닫기에는 outpout metric에 영향을 미치지 않았다 정도로 점검할 수 있는걸까요? 좀 더 이전에 알아채는 방법은 없을까요?
-
해결됨모두의 깃 & 깃허브
(END)를 어떻게 없애나요??
git 명령어를 입력하고나면, (END)줄이 자동으로 나타나서 q를 입력해 따로 빠져나오지 않은 상태에서는 명령어를 추가적으로 입력 할 수 없어서 불편하더라구요.예를 들어 git log --oneline을 통해 두개의 해시태그를 복붙해야하는 상황에서 q를 눌러 빠져나오지 않으면 명령어 입력이 안돼서, 메모장에 두개의 해시태그를 따로 복붙하지않는이상 맥은 클립보드가 지원이 안돼서 하나밖에 복사가 안되기때문에 하나밖에 복사를 못하고 빠져나오는 상황이 벌어집니다..강사님 보면 (END)없이 다음같이 계속 명령어입력이 가능하던데 어떻게 이렇게 만들까요??
-
해결됨스프링 DB 1편 - 데이터 접근 핵심 원리
오타
좋은 강의 감사합니다. pdf 6. 스프링과 문제 해결 - 예외 처리, 반복11페이지에 MemberServiceV4Test 클래스에 @Slf4j 가 필요합니다. 중요친 않지만..좋은 강의 제공해주셔서 감사해서 말씀드립니다.
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
동전교환문제 dfs 질문이있습니다
실행하였을 때 생각나는 테스트케이스 모두 통과되는데 오답이라고 나오는 반례가 어떤 게 있을까요?....import java.util.*; class Main{ static int number, result; static boolean check = false; boolean flag=false; public void DFS(int L,int sum, int[] arr){ if(sum>result || check) return; if(sum==result){ System.out.println(L); check = true; } else{ for(int i=0; i<number; i++) { DFS(L + 1, sum+arr[i], arr); } } } public static void main(String[] args){ Main T = new Main(); Scanner kb = new Scanner(System.in); number =kb.nextInt(); int[] arr = new int[number]; for(int i=0; i<number; i++){ arr[i] = kb.nextInt(); } Arrays.sort(arr); int first = 0; int last = arr.length-1; while(first<last){ int ch = arr[first]; arr[first++] = arr[last]; arr[last--] = ch; } result = kb.nextInt(); T.DFS( 0 , 0,arr); } }
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
질문입니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]이렇게 실패라고 뜨는데 어떤부분이 잘못되어서 그런건가요?
-
미해결[백문이불여일타] 데이터 분석을 위한 중급 SQL
GROUP BY
해커랭크 Top Earners 문제에서 ORDER BY 에서 내림차순을 안하고 GROUP BY에서 내림차순을 쓰고 ORDER BY를 안해도 정답이 되는데 두 방법의 차이점이 있나요?
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
express redirect
client 주소: http://localhost:3000server 주소: http://localhost:5000현재 저는 쿠키 공유 잘 되며 글 작성도 잘 됩니다. 그런데 client에서 server로 요청을 보내고 요건에 부합하지 않으면 client측 화면을 redirect 시키려는데 cors 오류가 발생합니다. 어떤부분을 보면 좋을까요?server에서 redirect 주소는 http://localhost:3000/login 이런식으로 client 주소 작성했습니다.추가적으로 client 측에서 router.push로 서버 주소로 요청보내고 로직 수행 후 응답 결과로 res.redirect는 cors 오류 없이 잘 동작합니다. 이건 또 왜 잘 되는걸까요.?
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
reaxt router npm 설치
안녕하세요~섹션6 페이지 라우팅1-React Router기본 편 듣고 있는데강의에 나오는 React Router 사이트에 들어가면 Installation 이라는 카테고리가아에 없는데.. 혹시 2023년 3월8일 기준으로 방법이 있나요?ㅠㅠ 홈페이지 다 눌러봐도안보이네요ㅠㅠㅠ
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
findName 질문
이름으로 조회해서 findName을 하면 한명만 조회되지 않나요??리스트로 받는 이유가 궁금합니다
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
전환 예외시 네이밍 관례
안녕하세요 늘 좋은 강의 감사합니다! 이번 예외편 너무나 잘 들었습니다. 예전부터 너무 궁금했는데 어떤 식으로 해결하는지 한번에 정리가 되네요. 궁금한 점이 있는데요.체크드 예외 -> 런타임 예외로 변경해서 처리하잖아요.1. 네이밍관례는 어떤 식으로 될까요? 물론 회사마다 다르겠지만, SQLExcpetion -> RuntimeSQLExcepton 처럼 "Runtime" + "체크트예외네이밍" 을 붙이는 식으로 변환하는 걸까요? 영한님이 평소에 말씀하시는 "일반적으로" 가 궁금합니다. 메이저IT 기업의 예처럼요. 2.SQLException을 이어받을 예외를 RunTimeSQLException 클래스로 만들었다고 한다면, 그 안에는 보통 (Throwable cause)를 받는 생성자 하나 정도만 만들어 놓고 다른 추가 작업은 필요한 것이 없을까요? 이것도 위처럼 보통 어떤 식으로 처리하는지 궁금합니다. 감사합니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
SendBuffer 새로 sendbuffer 할당해주는 문제
public static ArraySegment<byte> Open(int reserveSize) { if (CurrentBuffer.Value == null) { CurrentBuffer.Value = new SendBuffer(ChunkSize); } if (CurrentBuffer.Value.FreeSize < reserveSize) { CurrentBuffer.Value = new SendBuffer(ChunkSize); } return CurrentBuffer.Value.Open(reserveSize); }Sendbuffer에서 남은버퍼를 반환해주는 open함수에서 필요한 사이즈가 현재 남아있는 free사이즈보다 큰 경우(CurrentBuffer.Value.FreeSize < reserveSize) 새로 sendbuffer를 CurrentBuffer.Value에 넣는데, 아직 CurrentBuffer.Value 에 보내지 못한 데이터가 있는 경우에 open을 해버리면 새 sendbuffer가 CurrentBuffer.Value로 치환되어버려서 데이터가 날라가버리는 것 아닌가요? 즉, 예를들어 아직 100명한테 다 안보냈는데 새로 할당해버리면 안되지않나요? _usedSize를 recvbuffer에서처럼 땡겨서 쓰지 않는 이유가 누군가가 계속 이전에 있던 부분(현재 사용 중인 부분)을 참조하고 있을 수도 있기 때문에 그냥 증가시키는 방법으로 한 것 처럼.. CurrentBuffer.Value 도 저렇게 그냥 새로 할당해버리면 안될 것 같다고 생각이 계속 듭니다 ㅜㅜ