묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
BasicItemController 질문입니다
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]basic/items.html 을 동적으로 수정하는 과정에서 저장된 아이템 목록이 뜨지 않습니다.이게 컨트롤러 부분이고이게 html입니다.컨트롤러 부분의 PostMapping 부분이 동작해야 아이템이 추가될거라 생각해서 포스트맨으로 post 요청을 보내보니 아이템 목록에 itemA와 itemB가 뜨더군요하지만 영한님의 강의 영상에선 바로 뜨던데 post 요청이 어떻게 들어간건가요? 제가 빼먹은 부분이 있는건지 궁금합니다
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
PRG 패턴에서 리다이렉트 하는 이유?
이유가 무엇인가요 ?post 후에 redirect가 아니라 서버에서 응답으로 201 상태코드와 함께 get 메소드로를 이용해서 PG패턴으로 만들 수는 없는건가요?
-
미해결입문자를 위한, HTML&CSS 웹 개발 입문
최상위 태그 html 태그
검색해도 여러 태그들만 나오는데.. 혹시 스타일 태그 맨 위에 선언한 html 태그는 무슨 태그인가요?이 html 태그에 스타일을 적용하면 html 파일에 있는 전체가 바뀌는 형식인건가요?<html>태그가 궁금합니다!!
-
미해결입문자를 위한, HTML&CSS 웹 개발 입문
저장시 줄바꿈
이상하게 선생님처럼 한줄로 태그랑 컨텐츠가 뜨는게 아니라 노트북 화면도 충분한데 저장하면 막 줄바꿈이 되는 경우들이 생기는데 뭐가 문제일까요 ㅠㅠ
-
해결됨[리뉴얼] React로 NodeBird SNS 만들기
`<List header={header}` 에서 header 같은 String 타입들도 useMemo 처리를 해주는 것이 좋은가요?
<List header={header} 에서 header 같은 String 타입들도 useMemo 처리를 해주는 것이 좋은가요?
-
미해결저작권 걱정없는 나만의 음악 만들기 - Studio One
라이선스
스튜디오원은 구매를 해야하는거죠? free 버전은 없지요?
-
미해결실전! 스프링 데이터 JPA
쿼리 힌트 Page 추가 예제 질문
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]자료에 forCounting에 대한 설명을 적어주셨는데,"Count쿼리도 쿼리 힌트 적용"한다는 설명이@QueryHints의 forCounting값이 false이면 Count쿼리가 나가지 않는다는 말씀이신가요?[자료 위치]파일명 : "실전! 스프링 데이터 JPA -v2022-12-18.pdf"위치 : "JPA Hint & Lock" > "JPA Hint" > "쿼리 힌트 Page 추가 예제"영상 : "실전! 스프링 데이터 JPA" > "JPA Hint & Lock"자료에는 "쿼리 힌트 Page 추가 예제"가 있지만 영상 11:44 이후 Lock으로 바로 넘어가서 저는 잘 이해가 안가네요.. ㅠㅠ
-
미해결실전 프로젝트로 배우는 타입스크립트
소스질문
캡틴판교님이 인강 하시면서 작성하신 [코로나 상황판 프로젝트] 소스는 어디에 있나요?
-
미해결저작권 걱정없는 나만의 음악 만들기 - Studio One
사운드 출력 문제
PC에서 볼때 왜 왼쪽헤드폰으로만 나올까요? 모노로만 출력됩니다. (참고로 같은PC에서 유튜브 재생시 스테레오로 정상재생 됩니다)
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
멀티 클래스 데이터를 coco data 포멧으로
제가 직접 모은 이미지 데이터 셋을 기반으로 MaskRCNN을 사용하여 object detection 과 segmentation 을 수행하려 합니다.올려주신 예제에는 CVAT을 통해서 Yolo3 포멧으로만 출력하는 예제가 있는데요, xml 이 아닌 COCO format json 으로 출력하려고 합니다.Balloon 강의를 보면 single class 만 인식하는 예제인데요, 멀티클래스를 학습하고 사용하려면 어떤 동영상 파일을 시청해야 하나요 아무리 찾아봐도 못 찾겠습니다. 너무 고통스럽네요 3일째입니다..Multi-class 학습가능한 MaskRCNN 모델 예제가 있는지Tensorflow2 버전에서 구동가능한지GPU를 자꾸 tesla4 를 잡는데 더 좋은 버전의 GPU를 제가 따로 지정할 수 있는지.. (프리미엄사용중입니다)감사합니다.
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
코코 데이터셋트에 나오는 설명문장들...
강의 항상 잘 보고 있습니다. 또 항상 질문에 빠르고 상세한 답변해주셔서 감사드려요!갑자기 든 의문인데 COCO데이터 셋 웹사이트를 보면 이미지 설명하는 데이터들도 같이 있더군요..(이걸 image captioning 이라고 하나요?)이러한 정보들은 coco data json에서 어떻게 구현이 되나요? 이미지에 대한 설명 문장을 저도 자동으로 만들어 보고 싶네요.. 또한 input 을 문장으로 넣었을때 이미지를 출력해주는 것두요. 이러한 실습을 해보려면 선생님강의중에서 참고할 만한게 있을까요? 혹은 링크나 관련 내용 알려주시면 감사드리겠습니다.. COCO dataset 의 매력중에 하나가 image captioning 인것 같기도 한데.. 어떻게 사용하면 좋을까요? 감사합니다.
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
RandomPort
랜덤 포트를 설정해도 Port가 0번으로 고정이 됩니다.한 개는 Intellij에서 Run 버튼을 이용해서 실행 시켰고한 개는 ./gradlew build 후 Intellij의 terminal에서java -jar first.jar를 이용해서 실행을 시켰습니다.instance-id도 추가를 해주었습니다. 혹시 몰라서 노트북 재시작까지 해보았는데도Eureka에서는 Port가 0번으로 고정이됩니다. 위의 사진은 Eureka 서버의 application.yml입니다.
-
미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트
선수지식 관련 질문입니다.
선생님 안녕하세요강의를 수강하기 전에 선수지식 관련해서 질문드립니다. 파이썬은 비교적 능숙하게 사용하고, 다른 장고 강의를 몇개 들어서, 기본적인 작동 원리는 이해한다고 생각합니다.다만, 리액트에 대한 지식이 전무하고 아주 기초적인 JS 지식만 있는 상태인데, 이 강의를 바로 들어도 무리가 없을까요?목표는 풀스택 개발자 라기 보다는, 장고에 대한 보다 깊은 이해 입니다. 즉, 리액트를 자유자재로 다루기보다는, 리액트가 어떻게 돌아가는지만 "이해"하고, 그것보다는 리액트를 곁들인 "장고"가 어떻게 돌아가는지를 이해하는 것이 목표입니다
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 레딧 사이트 만들기(NextJS)(Pages Router)
프론트준비생에게 노드익스프레스 필수 사항 인가요?
server 폴더 부분 익스프레스로 만드시는거프론트준비생에게도 필수 사항 일까요?궁금합니다
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
Eureka LoadBalancing
안녕하세요 질문이 3가지가 있습니다.다음과 같이 Eureka에 서버가 2개 등록되어있으면 유레카에서 로드밸런싱을 해주는 건가요? Client -> GateWay로 요청 보냄 -> Eureka에 서버 정보 요청 -> Eureka는 Application name에 여러 개의 IP가 있을 시 로드밸런싱을 해서 GateWay에 서버 정보를 알려줌 -> Gateway가 Eureka에서 얻은 서버 정보로 요청을 보냄이 과정을 맞을까요?위와 같이 8081, 9091이 등록이 되어있지만 Gateway를 호출을 해보면 8081만 나오게 됩니다.실행 시킨 방법은 8081은 Intellij에서 Run 버튼을 이용해서 실행 시켰고 9091은 Edit Configuration을 이용해서 -Dserver.port=9091을 이용해서 실행시켰습니다.게이트웨이의 application.yml은 다음과 같습니다.first-service의 application.yml은 다음과 같습니다.8081은 잘 찍히는데9091은 잘 나오지 않습니다.application.yml에 설정된 값이 8081로 되어있어서 8081만 나오게 되는걸까요?
-
해결됨파이썬/장고로 웹채팅 서비스 만들기 (Feat. Channels) - 기본편
[해결된 줄 알았는데 안됨] 실습)초간단 Echo 구현 실행 오류...
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡhttp:127.0.0.1:8000/echo 들어가면이렇게 나오기는 하는데!콘솔이랑 파이참의 터미널을 보면!강의랑 다르게 이런 오류가 뜨긴 합니다!파이참에서 더 정확하게이런 오류가 뜹니다! 또, ws.send를 해도... 음...사실 제 친구 컴퓨터랑 2대를 동시에 하고 있는데 나오는 오류는 동일합니다.맨 처음 pyenv install 3.10.4 였나 그것도 동일한 core 머시기 MSI오류떠서 pyenv 쓰지 않았고..
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
오타로 인한 컬럼명 변경
category_color.dart 파일내 아래 부분 컬럼명을 최초에는hexcode 로 한뒤 main 소스까지 실행을 했었는데요강의를 따라하다보니 오타인지를 확인했습니다 TextColumn get hexCode => text()(); hexcode -> hexCode 로 변경 하면 잘될줄 알았는데 아래처럼 오류를 뱉더라구요[VERBOSE-2:dart_vm_initializer.cc(41)] Unhandled Exception: Exception: You've bumped the schema version for your drift database but didn't provide a strategy for schema updates. Please do that by adapting the migrations getter in your database class. DB 파일초기화 하거나 버전올리는 방법이 있을까요!?
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
filter가 작동되지 않습니다.
- 강의에 있는 거 그대로 사용했는데 log가 뜨지를 않습니다. 디버그를 찍어보니 필터를 거치지 않는데 어떻게 해결을 해야될까요??- 요청은 정상적으로 가고 응답도 first-service / second-serivIce에 맞게 잘 가져옵니다.
-
미해결따라하며 배우는 리액트 A-Z[19버전 반영]
styled component hoisting 질문
안녕하세요, styled component 적용하는 강의에서 질문이 있습니다.const의 경우 hoisting이 선언부만 되는 걸로 알고 있는데, container,Iframe 등을 코드의 가장 밑부분에 작성하더라도 사용될 수 있는 이유가 있을까요??
-
미해결스프링 프레임워크는 내 손에 [스프1탄]
'2022.12.23 오후 5:22에 질문드린 추가질문드립니다 글'에 대한 선생님 답변에 대한 질문입니다.
안녕하세요 선생님. 먼저 BoardController입니다. @Controllerpublic class BoardController { @Autowired private BoardMapper boardmapper; // HandlerMapping @GetMapping("/") public String root() { return "redirect:/main"; } @GetMapping("/main") public String main(Model model) { List<Board> list = boardmapper.getLists(); model.addAttribute("list", list); return "main"; // /WEB-INF/views/main.jsp -> forward } @GetMapping("/boardWriteForm") public String boardWriteForm() { return "boardWriteForm"; } @PostMapping("/boardWrite") public String boardWrite(Board vo) { boardmapper.write(vo); return "redirect:/main"; } @GetMapping("/boardMore") public String boardMore(@RequestParam("idx") int idx, Model model) { //public String boardMore(int idx, Model model) { boardmapper.boardCount(idx); Board vo = boardmapper.boardMore(idx); model.addAttribute("vo", vo); return "boardMore"; } @GetMapping("/boardDelete/{idx}") public String boardDelete(@PathVariable("idx") int idx) { boardmapper.boardDelete(idx); return "redirect:/main"; } @GetMapping("/boardUpdate/{idx}") public String boardUpdateForm(@PathVariable("idx") int idx, Model model) { Board vo = boardmapper.boardMore(idx); model.addAttribute("vo", vo); return "boardUpdateForm"; } @PostMapping("/boardUpdate") public String boardUpdate(Board vo) { boardmapper.boardUpdate(vo); return "redirect:/boardMore"; }} 두번째로 main.jsp 입니다.<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%><%@taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%><!DOCTYPE html><html lang="en"><head><title>Bootstrap Example</title><meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" /><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/css/bootstrap.min.css" /><script src="https://cdn.jsdelivr.net/npm/jquery@3.6.1/dist/jquery.slim.min.js"></script><script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js"></script><script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/js/bootstrap.bundle.min.js"></script></head><body> <jsp:include page="header.jsp" /> <div class="container"> <h2>게시판</h2> <table class="table table-bordered"> <thead> <tr> <th>번호</th> <th>제목</th> <th>작성자</th> <th>작성일</th> <th>조회수</th> </tr> </thead> <tbody> <c:forEach var="vo" items="${list}"> <tr> <td>${vo.idx}</td> <td><a href="boardMore?idx=${vo.idx}">${vo.title}</a></td> <td>${vo.writer}</td> <td>${fn:split(vo.indate, " ")[0]}</td> <td>${vo.count}</td> </tr> </c:forEach> <tr> <td colspan="5" align="right"><a href="boardWriteForm" class="btn btn-primary">게시글 작성</a></td> </tr> </tbody> </table> </div></body></html> 세번째로 boardMore.jsp입니다.<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%><%@taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%><% pageContext.setAttribute("newLineChar", "\n");%><!DOCTYPE html><html lang="en"><head><title>Bootstrap Example</title><meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" /><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/css/bootstrap.min.css" /><script src="https://cdn.jsdelivr.net/npm/jquery@3.6.1/dist/jquery.slim.min.js"></script><script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js"></script><script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/js/bootstrap.bundle.min.js"></script></head><body> <jsp:include page="header.jsp" /> <div class="container"> <h2>게시글 상세</h2> <table class="table table-bordered"> <tbody> <tr> <td style="max-width: 50px">제목</td> <td>${vo.title}</td> </tr> <tr> <td style="max-width: 50px">내용</td> <td>${fn:replace(vo.content, newLineChar, "<br/>")}</td> </tr> <tr> <td style="max-width: 50px">작성자</td> <td>${vo.writer}</td> </tr> <tr> <td style="max-width: 50px">작성일</td> <td>${fn:split(vo.indate, " ")[0]}</td> </tr> <tr> <td style="max-width: 50px">조회수</td> <td>${vo.count}</td> </tr> <tr> <td colspan="2" align="right"><a href="boardUpdate/${vo.idx}" class="btn btn-primary">수정</a> <a href="boardDelete/${vo.idx}" class="btn btn-danger">삭제</a> <a href="main" class="btn btn-success">목록</a></td> </tr> </tbody> </table> </div></body></html> 네번째로 boardUpdateForm.jsp입니다.<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%><%@taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%><!DOCTYPE html><html lang="en"><head><title>Bootstrap Example</title><meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" /><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/css/bootstrap.min.css" /><script src="https://cdn.jsdelivr.net/npm/jquery@3.6.1/dist/jquery.slim.min.js"></script><script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js"></script><script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/js/bootstrap.bundle.min.js"></script></head><body><!-- <nav class="navbar navbar-expand-md bg-dark navbar-dark"> <a class="navbar-brand" href="../main"><img style="max-width: 80px" src="../resources/images/logo.png" /></a> <ul class="nav navbar-nav navbar-right"> <li class="nav-item"><a class="nav-link" href="#">김명수님, 안녕하세요</a></li> <li class="nav-item"><a class="nav-link" href="#">회원정보수정</a></li> <li class="nav-item"><a class="nav-link" href="#">로그아웃</a></li> </ul> </nav> --> <br> <div class="container"> <h2>게시글 수정</h2> <form action="../boardUpdate" method="post"> <input type="hidden" name="idx" value="${vo.idx}" /> <table class="table table-bordered"> <tr> <td style="min-width: 100px;">제목</td> <td><input type="text" name="title" class="form-control" value="${vo.title}" required></td> </tr> <tr> <td>내용</td> <td><textarea name="content" class="form-control" rows="10" required>${vo.content}</textarea></td> </tr> <tr> <!-- 추후 세션으로 처리 --> <td>작성자</td> <td><input type="text" name="writer" class="form-control" value="${vo.writer}" readonly></td> </tr> <tr> <td colspan="2" align="right"> <button type="button" class="btn btn-danger" onclick="location.href='../boardMore'">취소</button> <button type="submit" class="btn btn-primary">수정완료</button> </td> </tr> </table> </form> </div></body></html> 마지막으로 header.jsp입니다.<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><nav class="navbar navbar-expand-md bg-dark navbar-dark"> <a class="navbar-brand" href="main"><img style="max-width: 80px" src="resources/images/logo.png" /></a> <ul class="nav navbar-nav navbar-right"> <li class="nav-item"><a class="nav-link" href="#">김명수님, 안녕하세요</a> </li> <li class="nav-item"><a class="nav-link" href="#">회원정보수정</a></li> <li class="nav-item"><a class="nav-link" href="#">로그아웃</a></li> </ul></nav><br> header.jsp를 공통적으로 적용하면 다 잘 되는데 updateForm에서는 logo를 인식하지 못합니다. logo의 주소가 No mapping found for HTTP request with URI [/m01/boardUpdate/resources/images/logo.png] 이런식으로 나오게 됩니다.지금 올린 코드에서는 주석처리한 부분이 공통적으로 한 것이 아니고 그 페이지에만 해당하는 방식으로 했습니다. 공통적으로 처리하는 방법 없을까요?<!-- <nav class="navbar navbar-expand-md bg-dark navbar-dark"> <a class="navbar-brand" href="../main"><img style="max-width: 80px" src="../resources/images/logo.png" /></a> <ul class="nav navbar-nav navbar-right"> <li class="nav-item"><a class="nav-link" href="#">김명수님, 안녕하세요</a></li> <li class="nav-item"><a class="nav-link" href="#">회원정보수정</a></li> <li class="nav-item"><a class="nav-link" href="#">로그아웃</a></li> </ul> </nav> --> 그리고 updateForm에서 취소버튼을 누르나 제출버튼을 누르나 HTTP 상태 400 – 잘못된 요청타입 상태 보고메시지 Required int parameter 'idx' is not present설명 클라이언트 오류로서 인지된 어떤 문제로 인하여, 서버가 해당 요청을 처리할 수 없거나, 처리하지 않을 것입니다. (예: 잘못된 요청 문법, 유효하지 않은 요청 메시지 framing, 또는 신뢰할 수 없는 요청 라우팅).이렇게 나오는 것도 왜 그런지 모르겠습니다... public String boardMore(@RequestParam("idx") int idx, Model model) { //public String boardMore(int idx, Model model) { 컨트롤러에서 이 부분은 int idx가 한개이므로 위나 아래나 다 가능한 것 아닌가요? 아래것으로 하면 오류가 java.lang.IllegalStateException: Optional int parameter 'idx' is not present but cannot be translated into a null value due to being declared as a primitive type. Consider declaring it as object wrapper for the corresponding primitive type.이런 오류가 납니다.그런데 오류가 나고 나서 다시 목록으로 가 보면 수정은 완료되어 있습니다. DB에 반영은 됩니다. 오류를 고치고자 선생님 올려주신 github 보고 계속 해봐도 도저히 안 됩니다. 어떻게 고쳐야 할까요??