묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
mvc members jstl
방법을 찾아봐서 다 해보고 jstl도 다 바꿔봐도 인식이안되는것같습니다 코드에는 문제가없는데 뭐가 문제일까요 ㅠㅠ
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
MemberServiceIntegrationTest 테스트 케이스 간섭 발생
안녕하세요. 감사히 영상을 보며 공부하고 있습니다.다름이 아니라 스프링 JdbcTemplate 적용 후 통합테스트를 진행해보는데,회원가입과 중복_회원_예외 테스트 메소드 개별 실행시 정상적으로 작동,클래스 테스트 실행시 중복_회원_예외 케이스 통과, 회원가입 케이스에서 에러가 발생하여 로그를 확인해보니,회원가입 테스트 실행 전, memberService.findMembers()를 통해 확인해본 결과, 중복_회원_예외 테스트케이스에서 put 하는 member 객체가 확인이 됩니다.Spring Boot와 JUnit 5를 사용하여 작성한 테스트 클래스의 경우, 테스트 메소드는 일반적으로 순차적으로 실행되지 않습니다. 대신, 각 테스트 메소드는 독립적으로 실행됩니다. 라고 확인이 되더라구요. 병렬적으로 실행되나, 컨텍스트가 분리되는것으로 보이는데, db는 같은걸 쓰다보니 에러가 발생하는게 아닐까 싶었습니다.그런데 영상에서는 통합테스트에서 이러한 에러가 발생하지 않는데, 어떤 차이때문일까요?*해당 코드 포함한 commit log link
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
itemName ,price 값 넣지 않았을때 차이
안녕하세요 강사님 bindingresult 편 강의 잘 듣고 있다가 궁금증이 생겨서 문의 드립니다.상품등록 폼에서 모든 필드에 값을 넣지 않고 post로 값을 전달했습니다 에러가 발생하면 스프링에서 new FieldError를 생성해 바인딩리절트에 담아서 다시 폼으로 값을 전달해주는 것으로 이해했습니다. 하지만 binding result 로그를 확인해보면 똑같이 전부 값을 주지 않았지만 itemName의 rejectedValue에만 아무값이 들어가있지않고,price와 수량에는 null이 들어갔습니다 왜 itemName만 null조차 들어가지 않는지 알 수 있을가요?사진 같이 첨부드립니다.항상 감사합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
build 오류
이렇게 오류가 뜨는데 어떻게 해결해야 하는지 궁금합니다.
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
ModelAttribute 사용하여 에러시 이전 데이터 유지 방식 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]현재 검증 직접 처리- 개발 부분을 수강중에 있습니다. 14분쯤에 영한님께서 에러 발생시 페이지를 다시 return 해도 이전 데이터를 사용하기 위해 Model 을 사용한다고 하셨습니다. 템플릿 엔진이 타임리프여서 유용한거 같은데 API 방식으로 진행하는 경우에는 해당 데이터를 서버에서 별도로 설계 해야하는건가요? 아니면 API로 만든경우에도 Model 과 같이 이전값을 유지하는 유용한 방법이 있는지 궁금합니다.
-
미해결[React 1부] 만들고 비교하며 학습하는 React
@ 골뱅이의 역활
안녕하세요!자꾸 질문드려 죄송합니다. 커스텀 이벤트를 호출하실때 계속 @(골뱅이)를 사용하시는데 구글에 아무리 찾아봐도 무슨 역활인지 모르겠습니다. 자바스크립트에 @를 붙이는 경우는 어디에 나와 있나요..? (혹시 제가 강의 내용에 있는 걸 놓친거라면 죄송합니다)
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
validation에서 구체화 궁금증
item price에 대한 validation을 할때구체화된게 우선순위를 가진다 했는데 그냥 . 이 많고 길면 우선순위가 적용되는건가요?예를들면error =>item에 걸린다면item<item.itemprice<item.itemprice.max<item.itemprice.max.어쩌구저쩌구 이런식으로 뒤에붙는 말이 관련이 없더라도 구체화된것이니 우선순위가 더 높아지나요??
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
사이드 프로젝트.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.안녕하세요. 강의 들으면서 사이드 프로젝트 진행해가면서 배운 내용을 써보고 싶습니다. 프로젝트에 사용될 템플릿은 무료 부트스트랩 템플릿 소스 코드를 가져와서 사용하면 될까요? ?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
url로 매핑된 컨트롤러를 찾는 것은 알겠는데 메소드는 어떻게 찾는 건가요?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]핸들러 매핑을 통해서 url이 들어오면 실행해야 할 컨트롤러를 찾는 것은 이해를 했습니다. 그런데 애노테이션 기반의 컨트롤러를 사용할 때 메소드에도 url이 매핑이 되었던데 이거도 스프링의 어떤 요소가 매핑 정보를 차례대로 조회하며 대응되는 것을 찾고 메소드를 수행해주는 것인가요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
세션 이름(name)은 무엇이고, 어떤 역할을 하나요?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]강의에서 등장한 두 용어(세션 아이디, 세션 이름)의 관계가 헷갈립니다.제가 이해한 바론, 세션 id는 클라이언트의 쿠키에 담아주는 랜던한 값으로, 해당 값으로 서버에서 세션을 찾습니다. 톰캣에선 jsessionid라는 이름으로 사용됩니다.그러나 강의에서 loginMember이란 이름으로 세션 name이 등장합니다. 어차피 세션 id로 세션을 식별할 수 있을텐데, 굳이 세션 이름이 존재하는 이유가 무엇일까요? 하나의 세션에 여러 정보를 담을 수 있고, 그 정보들을 식별하기 위한 식별자의 역할을 하는 걸까요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
세션을 만드는 것과 회원 정보를 보관하는 것의 관계
===[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]HttpSession session = request.getSession();위 코드는 세션이 있으면 그대로 사용, 없으면 세션을 새롭게 생성이라고 공부했습니다. session.setAttribute(SessionConst.LOGIN_MEMBER, loginMember);그리고 위 코드는 세션에 로그인 회원 정보를 보관하는 거라고 이해했습니다. 여기서 궁금합니다.세션을 생성하는 것과 회원 정보를 보관하는 것이 따로 존재한다면, 세션을 생성한다는 것이 무슨 의미가 있는지 모르겠습니다. 만약 세션만 만들고 회원 정보를 넣지 않는다면 세션 저장소에 특정 JSESSIONID 값을 키로 가지지만, value는 null인 상태로 저장되는 걸까요?그리고 하나의 세션에 여러 쿠키를 가질 수 있다고도 이해했습니다. 어차피 유저를 식별하는 데 하나의 쿠키만 있으면 될텐데 왜 세션에 여러 쿠키를 저장할 수 있는지 모르겠습니다.
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
오류시 인풋 값 사라지는 이유
BindingResult 사용시 오류가 발생하면 인풋 값이 사라지는데 이유가 뭔가요?"validation/v2/addForm" view 템플릿에는 여전히 th:object로 item이 지정되어 있고 각 필드 값들도 th:field로 지정되어 있는데 사라지는 이유가 궁금합니다.
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
스프링부트 + jsp로 프로젝트 생성하려면 jar가 아닌 war로 만들어야하나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)네2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)네3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)네[질문 내용]강의에서 jsp사용하지않으므로 jar로 선택해달라고 하셨는데 그러면 스프링부트+jsp 사용시 war로 프로젝트를 생성해야하나요?그리고 war는 외부서버배포용이라고 말씀하셨는데 공부하면서 aws로 프로젝트 배포까지 해보려고 하거든요..(아직 하나도 모르긴합니당..ㅠㅠ)배포 하게 될 때에는 jar가 아닌 war로 변경해서 배포해야하는걸까요?
-
해결됨스프링 프레임워크는 내 손에 [스프1탄]
모바일 크기에 맞추기
선생님께서 만드신 웹을 모바일 크기에 맞춘 웹사이트로 만들고 싶은데그건 어떻게 할 수 있나요?
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
DB Connection 관련하여 질문드립니다.
@Transactional 선언된 메서드를 사용할 때, Connection이 사용되고 반환되는 시점이 궁금합니다.@Transactional 메서드 호출 -> 쿼리 실행 -> 외부 API 호출 -> @Transactional 메서드 종료 라고 했을 때, @Transactional 시작 시점부터 끝날 때까지 하나의 커넥션이 유지되나요? 아니면 쿼리가 실행될 때, 그리고 커밋/롤백 될때만 커넥션을 사용(커넥션 opne & close)하나요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
세션과 세션저장소의 개념구분
강의자료를 보던중에 혼동이 와서 질문드립니다..강의자료를 보면 세션을 생성하고, 신규 세션을 반환하고, 세션에 데이터를 보관하고.. 등등세션이라는 단어가 사용이 되는데요.. 하지만 이전에 세션 저장소라는 개념도 있어서 '세션'과 '세션저장소'의 구분이 잘 되지않습니다..다른 질문을 참고하니 HttpSession은 세션저장소이다 라고 답변주신것을 보긴했습니다. 그리고 session은 Map형태로 저장이 되서 세션저장소 내부에 있는 Map자체를 session이라고 생각했는데, 이 Map의 sessionId에 대응되는 값도 session이라고 부르는것인가요..?HttpSession = 세션저장소세션저장소내에 세션이 있다.세션 = 세션저장소 내에 있는 Map = 세션저장소 내에 있는 Map의 value이렇게 이해해도 되는것일까요..?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
자동생성되는 th:field의 value를 th:value의 value로 덮어쓰기되는지 확인 문의
안녕하세요 강사님 강의듣고 이해안되는 부분이 있어서 질문 남깁니다.최초로 상품등록을 하면 컨트롤러에서 Get메서드형식인 아래의 컨트롤러가 호출이되면서 빈깡통의 Item 객체가 모델에 담겨서 addForm.html로 값이 넘기는것으로 알고있는데요 그래서 최초 등록폼에서 소스보기를 하면 상품명 ,가격,수량부분이 value 가 공백이 들어간것으로 이해했습니다. @GetMapping("/add") public String addForm(Model model) { model.addAttribute("item", new Item()); return "form/addForm"; }하지만 의문드 드는점이 등록지역의 value는 SEOUL이 들어갔습니다 답은 메서드단위의 resions의 값이 들어갔다는것을 알고있지만 이해가 되지 않는점이 addForm에 등록지역 부분에는 th:field부분에서ModelAttribute의 값인 ${resions}이아니고 선택변수인 {resions}가 들어갔으니 최초에는 값이 없으니 위의 상품명처럼 value가공백이 들어가야하는데 SEOUL로 들어가는 것이 이해가 안갑니다. th:field={resion}의 자동생성되는 value가 th:value의 ${resions}의 벨류로 덮어쓰기가 되는건가요? 긴글 읽어주셔서 감사합니다.
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
템플릿 레이아웃2 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]replace 할때 html tag 릴 기준으로 section을 넘기는거를 혹시 div Tag 가 가능한지 해봤더니 가능하더라고요. 근데 div tag 안에 또다른 div 태그가 있는데 최상위 div tag 전체를 넘기는거 같습니다. 가독성으로 혹시 div tag 의 특정 name 이 붙은 tag 를 넘기는게 가능할까요?ex)<div class="test1")><div class ="test2"></div><div>이런식일때 test1 tag 나 test2 태그중에 어떤 레벨을 넘길지 정할수 있는건가요? *추가로 layoutExtendMain 에서 layoutFile 한개를 불러왔는데 혹시 layoutFile2처럼 여러개도 호출가능한건가요? 답변 미리 감사합니다^^
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
실행은 되는데 정지하면 오류가 뜹니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 실행을 하고 난 후 정지를 하면 이런 오류가 뜹니다그래서 저와 같은 문제가 있는질문이 있는지 찾아보고 실행은 잘 되는데 멈출때마다 에러 메세지가 떠요 - 인프런 | 질문 & 답변 (inflearn.com)이 게시글에서 말씀해주신 링크대로 설정을 했더니 tomcat이 실행이 되지 않더라구요 이거 발견하고 나서 그래서 다시 프로젝트 설치해서 실행한 상태인데 여전히 멈추면 에러가 뜹니다... 어떻게 해야 하나요..?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
세션아이디에 대해 질문드립니다..
HttpSession session = request.getSession();을 하게되면 쿠키가 생성되고, 쿠키의 이름은 JSESSIONID, 쿠키의 값은 랜덤값이라고 이해했습니다. 하지만 이전 강의를 보면 쿠키의 값을 세션id와 동일하게 설정을하고, 쿠키의 값을 통해 세션저장소에서 세션을 조회했는데요. 하지만 코드에서는 session.setAttribute(SessionConst.LOGIN_MEMEMBER, loginMember)로 상수를 세션id(key)로 지정했는데 이렇게 하면 SessionConst.LOGIN_MEMEMBER를 통해 세션저장소에서 세션을 조회해야하지않나요? 쿠키의 value와 세션저장소의 세션id가 동일하지않은데 어떻게 조회할수 있는지 궁금합니다..