묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
RequestParam 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.이런식으로 name 값을 줘도 자꾸 null만 뜨는데 왜 그런거죠??
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
예외 복구 처리 시 런타임 예외로 전환 필요성
체크 예외를 런타임 예외로 전환하는 것에 대해 의문점이 있습니다.리포지토리에서 체크 예외인 SQLException을 런타임 예외인 MyDBException으로 변환하는 것은 서비스의 SQLException에 대한 의존을 제거하기 위함인데특정 케이스의 예외(중복 키 발생)인 경우 복구를 위해 레퍼지토리에서 에러코드로 SQLException을 분리하고 코드에 따라 다른 런타임 예외를 만들어서 던집니다.이 때 서비스에서는 해당 에러 복구를 위해 try-catch로 결국 해당 런타임 예외를 잡는 코드를 추가해야 합니다. -> 런타임 예외에 대한 종속이 생김 그렇다면 이렇게 예외 처리에 대한 목적이 분명한 경우 SQLException 예외 코드에 따라 (Exception)을 상속받은 체크 예외를 만들어서 던지게 되면 예외를 누락할 위험성도 없고 더 좋은것 아닌가요?-> 어차피 직접 생성한 예외에 대한 종속이 서비스에서 발생하였으므로 왜 굳이 런타임 예외를 상속받은 예외를 생성해서 던지는 지 궁금합니다.
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
섹션2 프로젝트 생성 아무것도 안됨
스프링 mvc 섹션2 서블릿 프로젝트 생성시 아무것도 안뜹니다servlet파일 압축풀어서 오픈했는데project 밑에 External Libraries랑 Scratches and Consoles 만 뜨고 아예 클릭도 안되고 아무것도 실행 안됩니다
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
테스트 코드와 DataSourceUtils
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]Transactional이 작동을 안 하길래 찾아보다가, DataSourceUtils.getConnection을 사용하지 않고, (DataSource 객체).getConnection을 써서 그런간가 싶어서 이것을 수정하려 했는데, 이러니까 테스트 코드가 작동이 안되네요... 테스트 코드와 DataSourceUtils가 어떠한 연관이 있는 건가요? (DataSource 객체).getConnection으로 DB를 연동하면 테스트 코드가 잘 되는데, DataSourceUtils.getConnection으로 하면 실행할땐 잘 되지만, 테스트 코드로 하면 데이터베이스 연동에 오류가 나는 것 같네요...
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
스프링 통합테스트중 회원가입에서 에러가납니다.
코드는 전부 같게한것같고, 이런식으로 에러가 나면서 실제 h2 db에서 확인결과 가입이 안되고 있습니다.이유가 뭔지 못찾고 있습니다 ㅠㅠ
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
MemberRepositoryTest 오류가 발생합니다
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예[질문 내용]MemberRepositoryTest 코드 실행하는데 C:\bootex\spring01\mvc\src\main\java\com\sbgb\mvc\domain\member\MemberRepository.java:23: error: cannot find symbol member.setId(++sequence); ^ symbol: method setId(long) location: variable member of type Member 라고 오류가 발생합니다.소스코드 비교해도 다른게 없고 아예 복사붙여넣기 해도 작동이 안됩니다Lombok도 잘 돼있고 Getter Setter도 다 돼있는데 안되네요
-
미해결윤재성의 만들면서 배우는 Spring MVC 5
8강 에서 servlet-context.xml에 설정에서 에라
servelt-context.xml에서 <annotation-driven/>를 입력하면 그림과 같은 에라가 나오는데 어떻게 해야 하나요 ?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
스프링 통합테스트 코드를 따라치고 있습니다. h2 db에 이름이 중복되어있을텐데 오류가 안납니다.
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용] 영한님 말씀대로면 이름이 같을시 오류가 떠야되는데 저는 뜨질 않고 돌아갑니다. 왜그런가요?@Transactional 주석처리하고 해도 같은결과입니다.
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
임포트가 되지않아요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]HelloData 생성했는데도 import가 되지 않습니다.package hello.springmvc.basic.request; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import java.io.IOException; import java.util.Map; @Slf4j @Controller public class RequestParamController { @RequestMapping("/request-param-v1") public void requestParamV1(HttpServletRequest request, HttpServletResponse response) throws IOException { String username = request.getParameter("username"); int age = Integer.parseInt(request.getParameter("age")); log.info("username={}, age={}", username, age); response.getWriter().write("ok"); } /** * @RequestParam 사용 * - 파라미터 이름으로 바인딩 * @ResponseBody 추가 (RestController 와 같은 역할을 수행함) * - View 조회를 무시하고, HTTP message body에 직접 해당 내용 입력 */ @ResponseBody @RequestMapping("/request-param-v2") public String requestParamV2( @RequestParam("username") String memberName, @RequestParam("age") int memberAge) { log.info("username={}, age={}", memberName, memberAge); return "ok"; } @ResponseBody @RequestMapping("/request-param-v3") public String requestParamV3( @RequestParam String username, @RequestParam int age) { log.info("username={}, age={}", username, age); return "ok"; } /** * @RequestParam 사용 * String, int 등의 단순 타입이면 @RequestParam 도 생략 가능 */ @ResponseBody @RequestMapping("/request-param-v4") public String requestParamV4(String username, int age) { log.info("username={}, age={}", username, age); return "ok"; } /** * Integer 은 객체이기 때문에 null 이 들어갈 수 있음 * int 는 기본형이 때문에 null이 들어올 수 없음 */ @ResponseBody @RequestMapping("/request-param-required") public String requestParamRequired( @RequestParam(required = true) String username, @RequestParam(required = false) Integer age) { log.info("username={}, age={}", username, age); return "ok"; } @ResponseBody @RequestMapping("/request-param-default") public String requestParamDefault( @RequestParam(required = true, defaultValue = "guest") String username, @RequestParam(required = false, defaultValue = "-1") int age) { log.info("username={}, age={}", username, age); return "ok"; } /** * @RequestParam Map, MultiValueMap * Map(key=value) * MultiValueMap(key=[value1, value2, ...]) ex) (key=userIds, value=[id1, id2]) */ @ResponseBody @RequestMapping("/request-param-map") public String requestParamMap(@RequestParam Map<String, Object> paramMap) { log.info("username={}, age={}", paramMap.get("username"), paramMap.get("age")); return "ok"; } @ResponseBody @RequestMapping("/model-attribute-v1") public String modelAttributeV1(@RequestParam String username, @RequestParam int age) { HelloData helloData = new HelloData(); } }
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
Test값 안녕 -> ?? 으로 인식되네요
위는 message.properties 입니다. 이는 Test 구요 안녕의 값을 Test하지만 실제는 ??로 인식이되네요어딘가에서 한글이 깨진거같은데 뭘까요
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
등록오류 및 조회 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예[질문 내용]여기에 질문 내용을 남겨주세요.자꾸 등록할때마다 이렇게 오류뜨고 h2db에선 member테이블이 있습니다. https://drive.google.com/file/d/15hAqagzQ4Yg-4Vqn2rnE_byFxQIsM8CC/view?usp=drive_link
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
회원 등록은 정상적으로 되는데 회원 목록에서는 등록한 회원이 보이지 않습니다
1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]회원 가입 이후 회원 목록에 회원이 보이지 않아 질문 올립니다.회원 등록에 문제가 있을까 해서 등록된 멤버를 print 해봤는데아래와 같이 정상적으로 되는 것을 확인했습니다.등록문제가 아니면 조회하는 부분에서 잘못된 부분이 있는 것 같아 findAll() 부분도 확인해봤지만 이상한 부분은 없는 것 같았습니다.이것도 아니면 등록된 회원이 넘어가는(?) 부분에서 뭔가 잘못된거 같은데 해결할 수 있는 부분을 찾기가 어려워 도움을 청합니다 ㅠㅠ아래는 제 소스파일 링크입니다.https://drive.google.com/file/d/1ty4a-1tezhW5kHJIFZJl-wOIefZfR2KS/view?usp=drive_link
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
프로젝트 생성시 WAS서버에 배포하여 운영할때 Packaging 선택?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.제목과 마찬가지로 프로젝트 생성시 WAS서버에 배포하여 운영하려면 항상 jar가 아닌 was로 Packaging 선택하여 사용하여야 하는지 궁금합니다.
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
HTTP 요청 파라미터-@RequestParam v4 오류
안녕하세요, 커리큘럼 중 HTTP 요청 파라미터-@RequestParam 강의를 듣다가v3까진 오류 없이 잘 따라가고 있었는데 v4부터 url을 입력하면 Whitelabel Error PageThis application has no explicit mapping for /error, so you are seeing this as a fallback.Wed Oct 11 16:50:31 KST 2023There was an unexpected error (type=Not Found, status=404). 가 뜨면서 콘솔창에는 Note: further occurrences of Parameter errors will be logged at DEBUG level.이란 문구가 뜨면서 오류가 납니다 ㅠㅠ 해결법 알려주시면 감사하겠습니다. 아래 사진 첨부합니다.
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
자바 코드로 직접 스프링 빈 등록하기 -> Controller를 Bean으로 등록하지 못하는 이유가 무엇일까요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요, '코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술' 강의 '자바 코드로 직접 스프링 빈 등록하기' 목차에서 어노테이션으로 컴포넌트 처리하는 것들 중 Service와 Repository는 Bean으로 등록하는게 가능하지만 Controller는 "아무것도 없어서 안됀다." 라는 설명을 해주시는데 이 부분이 이해하기 어렵습니다. 어떤 이유에서 Controller는 Bean으로 등록하지 못하는 걸까요? 어떤 이유인지 모르겠지만, 그 이유가 다른 경우에선 다르게 영향을 줘서 Controller가 아닌 다른 객체도 Bean으로 등록하지 못하기도 하나요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
th:for="${#ids.prev('regions')}"
해당 th:for="${#ids.prev('regions')}" 구문을 사용해서regions에 대한 id값을 자동으로 할당받지 않아도즉 th:for="${#ids.prev('regions')}" 구문을 빼는것을 얘기합니다.소스보기를 하니 자동으로 regions 1,2,3 아이디값이 들어있는데이 경우에는 thymeleaf가 th:for="${#ids.prev('regions')}"를 사용하지 않아도 th:for="${#ids.prev('regions')}" 를 사용한것처럼 자동으로 인식해서 만들어줬다고 봐야할까요 ?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
프로젝트 설치하고 똑같이 했는데 오류가 발생하네요 ㅠㅜㅠ
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]이렇게 3줄만 나오고 localhost8080도 안되네요 문제점이 뭘까요 이전에 다른 것을 만들었어서 jdk가 11로 되어있어서 아래와 같이 모두 바꿔주었는데도 안되네요 ㅠㅜㅠ 어떻게 해야할까요 ㅠㅜㅠ더 바꿔야 할 부분이 있는 걸까요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
비동기 Validation 오류코드 클라이언트에 반환하는것..
제가 회원가입과 로그인을 비동기로 처리하는데요. 일반 요청처럼 binding result에 오류 코드 담아서 클라이언트로 보내야하는데.. 아직 제 실력으로는 이걸 해결하기가 어렵네요 ㅠ커뮤니티 뒤져본결과 해당 비동기 처리하는 공유해주신 게시물들을 봐도 너무 어렵더라구요..이부분에 있어서 영한님 강의가 없을까요? ㅠ 하..추천 쿼리큘럼에 스프링부트 DB 1,2편까지는 구매해놨습니다..아직 API 예외처리 강의를 수강하지 못했는데, 이부분을 좀 더 이해할 수 있으려나요...
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
사이드 프로젝트를 만드려고 하는데 어느편까지 봐야할까요?
사이드 프로젝트를 만드려고 하는데 어느편까지 보고 만드는게 좋을까요?강의를 다 듣고 사이드 하기에는 좀 늦을 것 같아서...
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
커넥션 풀 사용 시 세션 생성 시점
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]커넥션 풀이 10개의 커넥션을 생성하면 세션도 10개가 만들어진다고 하셨는데, 커넥션 풀에 커넥션을 생성하는 시점에 세션이 만들어지는 것인지 아니면 클라이언트가 커넥션 풀의 커넥션을 꺼내서 사용할 때 세션이 만들어지는 것인지 궁금합니다.