묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
JSON key값이 getter기준으로 설정되나요?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]Hello 클래스 객체에서 인스턴스 name이 결과로 나오는 JSON형식의 key값이 아니라, getter/setter의 getter의 영향만 받는것 같습니다. 제가 이해한게 맞나요? 왜 이런식으로 동작하나요?예를 들어 pricate String name1; public String getName2(){ return name1; } public void setName3(){ return name1; } 위 처럼 코드를 짜면 {"name1":"value"}가 나오는게 아니라{"name2":"value"}로 나오는데 왜 이런건지 궁금합니다...
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
정적페이지, 컨트롤러 Priority
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]정적 컨텐츠 이미지 설명하실 때 목록 관련 컨트롤러가 존재하지 않을 경우 정적 페이지를 로드한다고 설명하신 것 같은데(제가 이해한게 맞나요?), hello-static.html 컨트롤러를 따로 만들고 테스트해본 결과 같은 이름으로 되어있으면 정적페이지가 우선적으로 로딩되는데 제가 뭔가 잘못이해한건가요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
HandlerAdapter 클래스 호출 우선순위 구현 코드
이전 질문(https://www.inflearn.com/questions/458302/handlermapping-%EC%9A%B0%EC%84%A0%EC%88%9C%EC%9C%84-%EC%84%A0%EC%A0%95-%EA%B8%B0%EC%A4%80)을 보고 HandlerMapping인터페이스를 구현한 클래스들은 Ordered 인터페이스를 상속받고 order 값을 set해줘서 우선순위에 따라 핸들러가 호출된다고 이해했습니다. HandlerAdapter도 우선순위를 알아보고자 하니 아래 4개의 어댑터 클래스가 있었고RequestMappingHandlerAdapter HandlerFunctionAdapterHttpRequestHandlerAdapterSimpleControllerHandlerAdapter RequestMappingHandlerAdapter와 HandlerFunctionAdapter만 Ordered 인터페이스를 상속받아 order 값을 set해줬습니다. HttpRequestHandlerAdapter와 SimpleControllerHandlerAdapter는 Ordered 인터페이스를 상속받지 않아 order 값으로 우선순위를 비교할 수 없을 것 같은데 어떻게 강의자료와 같이 우선순위를 비교할 수 있는 건가요?0 = RequestMappingHandlerAdapter : 애노테이션 기반의 컨트롤러인 @RequestMapping에서 사용 1 = HttpRequestHandlerAdapter : HttpRequestHandler 처리 2 = SimpleControllerHandlerAdapter : Controller 인터페이스(애노테이션X, 과거에 사용) 처리
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
스프링 인터셉터 API 인증 궁금합니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예[질문 내용]postman에서 제가 logout api를 직접 만들어 봤습니다.근데 밑 화면에 보면 cookies가 그대로 살아있습니다. 왜 그럴까요?로그인을 하고 다른 api 호출하면 잘 되고 이렇게 로그 아웃 api 호출하고 다른 api호출하면 안되는 상황입니다. 즉 로그아웃 api를 잘 구현한 것 같습니다. 근데 왜 로그아웃 api 호출한 이후에도 밑에 cookies가 남아있을까요?저것의 의미가 response에서 받은 쿠키 얘기 하는 것아닌가요?response.addCookie안에 setMaxage가 0인것으로 갈아껴서 그거 나타내는 것일까요? 그리고 실무에서 api를 통해서는 이렇게 log in,log out 구현하는거 맞을까요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
API 인증 실험 중 궁금한 거 있습니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예[질문 내용]postman으로 필터를 통한 API인증을 실험해 보고 있었습니다.위 그림처럼 /api/items/api/add 를 하면 인증이 안되어야 하므로 뭐 튕기거나 그런 것은 이해 가능인데 Cookies는 대체 왜 생기는 건가요!
-
해결됨스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
쿠키와 세션의 관계에 대해서
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예[질문 내용]세션안에 쿠키가 사용된다 하셔가지고 sessionId와 value가 무슨 관계가 있나? 생각했습니다.저희가 직접 만든 session이용 파트에서 SessionManager의 코드 중Cookie MySessionCookie=new Cookie(SESSION_COOKIE_NAME,sessionID)가 있습니다.그래서 HttpSession 에서 실험해 보았는데요. session.setAttribute(SessionConst.LOGIN_MEMBER,loginMember); System.out.println(session.getId()); System.out.println(session.getAttribute(SessionConst.LOGIN_MEMBER)); Cookie []cookie=request.getCookies(); for(int i=0;i<cookie.length;i++){ System.out.println(cookie[i].getValue()); System.out.println(cookie[i].getName()); } 이거로요.0BF73A108D2A8687E85F4D84FF0BD3FF->sessionID21BCD10FFBAA82EDCBF8D917BCEC0BE8->쿠키의 값 value 인데왜 둘이 다른 걸까요?쿠키와 세션의 관계가 헷갈리네요.
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
[Validation] MultiPartFile에 자동으로 적용된 @NotNull
우선 저는 다음과 같이 MultipartFile을 받도록 작성했습니다.@RequestParam MultipartFile attachFile그리고 attachFile에 마우스를 대보았더니 다음과 같이 뜹니다.위처럼 @NotNull 이라는 annotation이 들어간 것을 확인할 수 있었습니다. 하지만 이 @NotNull이 javax.validation 것인지는 알 수가 없었습니다. 또한 @RequestParam의 required의 default가 true라서 그런가 싶어서 false로 지정해도 @NotNull은 사라지지 않았습니다.Null 인 경우는 파일을 선택하지 않았을때 밖에 생각이 안드는데요. 이때 당연하겠지만 오류 페이지로 넘어가게됩니다.저 @NotNull의 정체가 무엇인지 알고 싶습니다.
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
검증 1, 2 관련 질문들
errors.properties에 args로 max나 range로 숫자를 넘길때 ","가 자동으로 추가됩니다. 예를 들어서 min={0} 이상이어야 합니다. 라고 Message를 설정했을때 화면에 "1,000 이상이어야 합니다." 라고 뜹니다. 하지만 저는 "1000 이상이어야 합니다." 라고 "," 없이 표현하고 싶습니다. 그렇다면 어떻게 수정해야할까요? max, range와 같은 경우에 Args를 넘기고 {0}, {1} 과 같이 설정한 메시지에서 받을 수 있었는데 typeMisMatch일때는 Args를 어떻게 넘겨 받을 수 있는지 알고 싶습니다. @ModelAttribute DTO 를 사용하지 않고 @RequestParam으로 하나의 객체를 받아올 때는 어떻게 validation 할 수 있을까요? 예를 들어서 @RequestParam MultipartFile attachFile 과 같이 attachFile이라는 객체만 받는다고 했을때 어떻게 validation 해야하나요? 객체가 하나라도 DTO를 만드는게 좋을까요 아니면 그냥 if 문을 활용해서 Model.addattribute로 넘기는게 좋을까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
강의 순서 관련해서 질문드립니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]제가 3주 정도의 기간 안에 스프링부트의 틀을 빠르게 공부를 해야됩니다. 김영한 강사님의 강의를 들으려고 하는데 아래의 순서로 진행을 해도 될까요?스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술김영한의 스프링부트와 jpa 실무 완전 정복 로드맵 (야생형)
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
디렉토리 변경으로 인한 실행파일변경문제입니다.
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]수업을 듣고 나서 강의 때 intellij에서 작성한 코드파일의 디렉토리를 변경하였는데 기존 파일과 다르게 일반.java파일로 변경이 되었습니다.이런 형태로 나와야 하는데 현재 디렉토리를 변경하고 나서 intellij를 실행하여 파일을 import했는데이와 같이 환경설정이 변경이 되었습니다. 어떻게 위에 수업 때처럼 환경설정을 하면 되는건가요..?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
@RequestBody, BindingResult 질문드립니다.
안녕하세요.질문 하나 드리겠습니다.아래와 같은 controller 메서드가 있습니다.public String test(@RequestBody TestDto testDto) {}TestDto안에는 int 타입의 age이란 필드가 있는데요 { "age": "1234a"}이런식으로 요청을 넘겨주면TestDto 바인딩 과정에서 문자로 인한 에러가 발생합니다.저는 이때 이 예외를 감지해서 "나이는 숫자만 입력 가능합니다."이런식으로 메시지를 반환해 주고 싶은데요BindingResult를 사용해보니 @ModelAttribute에서만 가능한 것 같습니다. @RequestBody 사용시 이렇게 바인딩 오류가발생하는 경우를 제어할 수 있는 방법이 있을까요? 답변 부탁드립니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
실행이 오류가 뜹니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]아랫분의 질의응답을 참고하여 하려고 했지만 코끼리 아이콘을 누르면 재빌딩을 할 뿐 setup 관련 아이콘은 뜨지 않습니다.
-
해결됨스프링 프레임워크는 내 손에 [스프1탄]
16강 mysqldb 연동이 안되어요
mysql cmd로 서버연결하는거 안되네요 오류가 자꾸 나요cmd창이 아주 순식간에 떳다가 사라져요 그래서 동영상으로 찍고 캡쳐했어요해결방법 찾아보는데 너무 힘들어서 질문 올립니다 ㅠ아 참고로 맥북에 부트캠프로 윈도우 사용중입니다 그래서 그런걸까요?그냥 cmd랑 mysql 전부 다 잘 되는데 저것만 실행이 안되네요..
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
이상한 글자
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.html 관련 코드 복붙하고 실행하면 이렇게 뜨는데 왜 이런건가요??
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
테이블 생성 에러
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]다음과 같이 오류가 나는데 어떻게 해야할까요 ?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
springconfig에서 오류가 나요
제가 설정 파일을 만질 일은 없어서 주신 자료 그대로 복붙했는데 오류가 나서 여쭤봅니다..임포트가 왜 안될까요
-
미해결스프링 프레임워크는 내 손에 [스프1탄]
스프1탄을 보기 전에 나프1,2탄은 필수일까요?
안녕하세요. 현재 회사에서 일하고 있는 초보개발자입니다. 현재 강사님의 로드맵을 따라서 모든 강의를 사서 차근차근 보고있는 중인데,현재 회사에서 스프링으로 신규 프로젝트를 진행할 것 같아서 스프1탄을 먼저 보려고 하는데, 나프1탄과 나프2탄을 필수적으로 보고 스프1탄을 봐야할까요?나프1탄과 나프2탄은 보기에는 시간적으로 여유가 많이 없을 것 같아서 질문드립니다ㅠ
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
RequestBodyStringServlet을 만든 이후 실행이 안됩니다.
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]HTTP 요청 데이터 -API 메시지 바디 -단순텍스트 강의를 듣고영한님이 작성하신 코드대로RequestBodyStringServlet을 만들었습니다.그런데 호환성 문제인지 갑자기 ServletApplication이 실행이 안 됩니다.RequestBodyStringServlet을 삭제하거나 주석 처리하면 다시 잘 동작하고요. 왜 이러는지 알 수 있을까요?혹시 몰라 build.gradle 스크린샷도 첨부합니다.
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
서블릿 예외 처리 - 오류 페이지 작동원리 중 WAS에서 request에 담아주는 정보들
강의 자료에 다음과 같이 되어있습니다.그런데 스프링부트 3.10버전에 java 17을 쓰고 있는데요, 저는 일단 xxxxxx_ATTRIBUTE로 해야 되네요,그리고 javax. xxx 가 아닌 jakarta로 하니까 되는데, 혹시 제가 잘못찾은걸까요? 버전의 문제일까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
실행버튼이 안생겨요 ....
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 실행 버튼이 생기지 않는데, 어떻게 해야할까여 ? ㅠ