inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

@Login Member ➡ @Login Optional〈Member〉 파라미터 타입에 대한 질문입니다.

해결됨

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 안녕하세요 최고의 김영한 강사님. 감탄하며 듣고 보고 있습니다. 고맙습니다. 새해 복많이 받으셔요! 저의 상황은 이렇습니다. HomeController 코드입니다. @GetMapping ( "/" ) public String loginHomeV4ArgumentResolver ( @Login ( LOGIN_MEMBER ) Optional < Member > member , Model model ) { if ( member . isEmpty ()) { return "home" ; } model . addAttribute ( "member" , member . get ()) ; return "loginHome" ; } 이 코드에서 의구심이 드는 부분은 제가 커스텀 한 파라미터 부분입니다. Optional<Member> @Login ( LOGIN_MEMBER ) Optional < Member > member 아규먼트 리졸버에서 HomeController 로 요렇게 쏴주고 있어요 public Object resolveArgument (... ) { ... ... /* 어노테이션 value 얻어오기 */ String sessionId = loginAnnotation . value () ; return Optional . ofNullable ( session . getAttribute ( sessionId )) ; } 질문입니다. 메서드 파라미터로 Optional 을 쓰지 말라고 어디선가 들었는데, 그 룰이 이 상황에도 적용이 되는지 , 이렇게 Optional 를 파라미터로 넘겨도 괜찮을지 궁금합니다. 잠제적인 문제를 알수 없어 질문하게 되었습니다. 읽어주셔서 감사해요!

  • spring
  • MVC
Truestar 댓글 1 좋아요 0 조회수 528

JdbcTemplate

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] build.gradle 파일에 jdbc 라이브러리를 추가하고, Load Gradle Changes도 해보고 File -> Open -> build.gradle을 선택해서 Open as Project도 해보았는데 JdbcTemplate을 import 못하고 있습니다. 어떤 부분에 문제가 있는 건가요?

  • MVC
  • spring-boot
  • spring
  • java
yuuuuu 댓글 1 좋아요 0 조회수 528

Ground Truth로만 학습한다는 것에 대한 질문

해결됨

[개정판] 딥러닝 컴퓨터 비전 완벽 가이드

안녕하세요. 강의 4분 40초경부터 설명이 시작되는, Ground Truth로만 학습한다는 것이 잘 이해가 되지 않아 질문 올립니다. IOU를 구하기 위해서는 G.T값 이외의 비교 대상이 필요하다 생각하는데, class를 G.T로만 정한다는 것이 이해가 잘 안되네요.. 답변해주신다면 정말 감사하겠습니다!

  • 머신러닝 배워볼래요?
  • keras
  • python
  • 컴퓨터-비전
  • 딥러닝
  • tensorflow
alsdn2530 댓글 1 좋아요 0 조회수 292

requestheaderservlet 실행 에러

미해결

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

3분경 코드 실행시 다음과같이 파싱은 제대로 되나, 밑에 에러들( IOExeption .. )이 많이 뜹니다 . 에러 내용이고, 최하단 코드업로드도했습니다. --- REQUEST-LINE - start --- request.getMethod() = GET request.getProtocal() = HTTP/1.1 request.getScheme() = http request.getRequestURL() = http://localhost:8080/request-header request.getRequestURI() = /request-header request.getQueryString() = null request.isSecure() = false --- REQUEST-LINE - end --- 2022-01-21 15:13:09.393 DEBUG 27180 --- [nio-8080-exec-1] o.a.coyote.http11.Http11InputBuffer : Before fill(): parsingHeader: [true], parsingRequestLine: [true], parsingRequestLinePhase: [0], parsingRequestLineStart: [0], byteBuffer.position(): [0], byteBuffer.limit(): [0], end: [780] 2022-01-21 15:13:09.393 DEBUG 27180 --- [nio-8080-exec-1] o.a.coyote.http11.Http11InputBuffer : Received [] 2022-01-21 15:13:09.394 DEBUG 27180 --- [nio-8080-exec-1] o.apache.coyote.http11.Http11Processor : Socket: [org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper@d344380:org.apache.tomcat.util.net.NioChannel@91bedf8:java.nio.channels.SocketChannel[connected local=/[0:0:0:0:0:0:0:1]:8080 remote=/[0:0:0:0:0:0:0:1]:51431]], Status in: [OPEN_READ], State out: [OPEN] 2022-01-21 15:13:11.105 DEBUG 27180 --- [nio-8080-exec-2] o.a.coyote.http11.Http11InputBuffer : Before fill(): parsingHeader: [true], parsingRequestLine: [true], parsingRequestLinePhase: [0], parsingRequestLineStart: [0], byteBuffer.position(): [0], byteBuffer.limit(): [0], end: [780] 2022-01-21 15:13:11.105 DEBUG 27180 --- [nio-8080-exec-3] o.a.coyote.http11.Http11InputBuffer : Before fill(): parsingHeader: [true], parsingRequestLine: [true], parsingRequestLinePhase: [0], parsingRequestLineStart: [0], byteBuffer.position(): [0], byteBuffer.limit(): [0], end: [0] 2022-01-21 15:13:11.113 DEBUG 27180 --- [nio-8080-exec-3] o.apache.coyote.http11.Http11Processor : Error parsing HTTP request header java.io.EOFException: null at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.fillReadBuffer(NioEndpoint.java:1328) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.read(NioEndpoint.java:1215) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.coyote.http11.Http11InputBuffer.fill(Http11InputBuffer.java:805) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:360) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:269) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:895) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1732) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at java.base/java.lang.Thread.run(Thread.java:832) ~[na:na] 2022-01-21 15:13:11.113 DEBUG 27180 --- [nio-8080-exec-2] o.apache.coyote.http11.Http11Processor : Error parsing HTTP request header java.io.EOFException: null at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.fillReadBuffer(NioEndpoint.java:1328) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.read(NioEndpoint.java:1215) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.coyote.http11.Http11InputBuffer.fill(Http11InputBuffer.java:805) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:360) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:269) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:895) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1732) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at java.base/java.lang.Thread.run(Thread.java:832) ~[na:na] 2022-01-21 15:13:11.114 DEBUG 27180 --- [nio-8080-exec-3] o.apache.coyote.http11.Http11Processor : Error state [CLOSE_CONNECTION_NOW] reported while processing request java.io.EOFException: null at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.fillReadBuffer(NioEndpoint.java:1328) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.read(NioEndpoint.java:1215) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.coyote.http11.Http11InputBuffer.fill(Http11InputBuffer.java:805) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:360) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:269) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:895) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1732) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at java.base/java.lang.Thread.run(Thread.java:832) ~[na:na] 2022-01-21 15:13:11.114 DEBUG 27180 --- [nio-8080-exec-2] o.apache.coyote.http11.Http11Processor : Error state [CLOSE_CONNECTION_NOW] reported while processing request java.io.EOFException: null at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.fillReadBuffer(NioEndpoint.java:1328) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper.read(NioEndpoint.java:1215) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.coyote.http11.Http11InputBuffer.fill(Http11InputBuffer.java:805) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:360) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:269) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:895) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1732) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.56.jar:9.0.56] at java.base/java.lang.Thread.run(Thread.java:832) ~[na:na] 2022-01-21 15:13:11.115 DEBUG 27180 --- [nio-8080-exec-3] o.apache.coyote.http11.Http11Processor : Socket: [org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper@d344380:org.apache.tomcat.util.net.NioChannel@91bedf8:java.nio.channels.SocketChannel[connected local=/[0:0:0:0:0:0:0:1]:8080 remote=/[0:0:0:0:0:0:0:1]:51431]], Status in: [OPEN_READ], State out: [CLOSED] 2022-01-21 15:13:11.115 DEBUG 27180 --- [nio-8080-exec-2] o.apache.coyote.http11.Http11Processor : Socket: [org.apache.tomcat.util.net.NioEndpoint$NioSocketWrapper@744cb7a8:org.apache.tomcat.util.net.NioChannel@639e0620:java.nio.channels.SocketChannel[connected local=/[0:0:0:0:0:0:0:1]:8080 remote=/[0:0:0:0:0:0:0:1]:51430]], Status in: [OPEN_READ], State out: [CLOSED] --- package hello.servlet.basic.request ; import javax.servlet.ServletException ; import javax.servlet.annotation. WebServlet ; import javax.servlet.http.HttpServlet ; import javax.servlet.http.HttpServletRequest ; import javax.servlet.http.HttpServletResponse ; import java.io.IOException ; @WebServlet (name = "requestHeaderServlet" , urlPatterns = "/request-header" ) public class RequestHeaderServlet extends HttpServlet { @Override protected void service (HttpServletRequest request , HttpServletResponse response) throws ServletException , IOException { printStartLine(request) ; } private void printStartLine (HttpServletRequest request) { System. out .println( "--- REQUEST-LINE - start ---" ) ; System. out .println( "request.getMethod() = " + request.getMethod()) ; //GET System. out .println( "request.getProtocal() = " + request.getProtocol()) ; //HTTP/1.1 System. out .println( "request.getScheme() = " + request.getScheme()) ; //http // http://localhost:8080/request-header System. out .println( "request.getRequestURL() = " + request.getRequestURL()) ; // /request-test System. out .println( "request.getRequestURI() = " + request.getRequestURI()) ; //username=hi System. out .println( "request.getQueryString() = " + request.getQueryString()) ; System. out .println( "request.isSecure() = " + request.isSecure()) ; //https 사용 유무 System. out .println( "--- REQUEST-LINE - end ---" ) ; System. out .println() ; } }

  • MVC
  • spring
댓글 1 좋아요 1 조회수 2540

aftereach 적용하지 않아도 테스트가 정상작동됩니다.

해결됨

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

현재 복습중입니다. 12분 34초에 나오는데, 분명 예전에는 @AfterEach 를 넣지 않으면 repository에서 기존 값들이 지워지지 않아 테스트에 오류가 생겼었습니다. 그런데 지금은 @AfterEach에서 clear 해주지 않아도 알아서 다른 테스트들에서 저장한 값들이 저장되지 않는데, 기본 구조가 바뀐 걸까요? 예를 들면 findAll에서 repository에 멤버1, 멤버2를 저장했습니다. 그러면 레포지토리의 사이즈는 2가 되어야 하는데, 다음 테스트 맨 처음에 repository.size를 출력해주면 0이 나옵니다.

  • MVC
  • spring-boot
  • spring
  • java
김태훈 댓글 2 좋아요 0 조회수 463

Java HotSpot(TM) 64-Bit Server VM warning

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

스프링부트 gradle 2.6.2 버전인데 설치하고 나서 기본 세팅된 프로그램 돌려봤는데 다음과 같은 워닝이 떠요 Java HotSpot(TM) 64-Bit Server VM warning: Options -Xverify:none and -noverify were deprecated in JDK 13 and will likely be removed in a future release. 어떻게 해결할 수 있을까요?

  • MVC
  • spring
  • spring-boot
  • java
이석현 댓글 2 좋아요 0 조회수 2804

서블릿 생성 시점과 역할 관련 질문입니다!

미해결

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

안녕하세요. 좋은 강의 정말 감사드립니다^^! 서블릿에 관련하여 궁금한 것이 생겨서 질문 드리고 싶습니다. 1. 서블릿 객체는 언제 생성되나요? 처음 스프링 부트가 띄워질 때 만들어 지는 것인가요? 아니면 url mapping이 되어서 서블릿 객체가 필요해지면 생성되나요? 그리고 스프링에서 사용하는 dispatcherservlet은 언제 생성되나요? 2. HttpServelet reqest 객체에 HTTP 요청 메시지 파싱해서 넣고 처리해주는게 서블릿 객체라고 배웠습니다. 그렇다면 HttpServelet response의 내용을 바탕으로 HTTP 응답 메시지를 생성하는 것도 서블릿이 하나요? 3. 서블릿의 요청 메시지 처리 작업은 언제 이루어지나요? was가 url에 맞는 서블릿 객체의 service()를 수행하는데, 저희가 만든 service에는 요청 메시지 파싱 작업이 없어보입니다! service를 부르기 전에 다른 메소드가 먼저 불리는 것인가요? 감사합니다!

  • spring
  • MVC
asdf5184 댓글 2 좋아요 5 조회수 2191

실무에 대해 궁금한것이 있습니다.

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

그렇다면 실무에서는 REST API의 예외처리를 처리하는경우, 앞서 배운 ResponseStatusExceptionResolver, DefaultHandlerExceptionResolver 이거는 제쳐두고 궁극기인 ExceptionHandlerExceptionResolver 의 @ExceptionHandler와 이를 모아서 관리하는 @ControllerAdvice 이렇게 2개만 사용이 되는편인가요?

  • MVC
  • spring
메모장 댓글 1 좋아요 1 조회수 368

리다이렉트 302

미해결

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

안녕하세요 크게 의미가 있는 질문은 아닌것 같지만 궁금해서 질문드립니다. 13:42초에 리다이렉트 후 hello-from.html을 200으로 응답코드를 내려줍니다. 그리고 HTTP 강의에서도 200으로 내려준다고 배웠던 기억이 있습니다. 그런데 왜 저는 똑같이 했는데 302로 내려주는 걸까요? 감사합니다.

  • MVC
  • spring
lch9502 댓글 4 좋아요 9 조회수 2424

try catch구문 질문 있습니다

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

강사님께선 처음에는 try catch를 쓸까 말까 고민하시다가 나중에는 에러가 터져서 try catch를 쓰시는걸 보았는데요, 실무에서 try catch를 언제 써야하는지 기준같은게 있는지 궁금합니다.

  • spring
  • MVC
메모장 댓글 1 좋아요 2 조회수 723

반복문 피보나치 수열 질문

미해결

파이썬(Python) 기초부터 실무까지 part.1

안녕하세요 수업을 듣고 있는 수강생입니다. 다름이 아니라, 피보나치 수열에서 해당 코드는 입력받은 수까지 계속 연산을 하고 있으며, 단순히 프린트 하는 명령이 없기 때문에 프린트를 하지 않는것으로 보이는데, 해당 입력 값이 13일 때, for문 자체를 빠져나가게 하는 방법이 있을까요? else : final_fibo = n1 + n2 n1 = n2 n2 = final_fibo if final_fibo < insertNumber: print (final_fibo , " " )

  • python
댓글 2 좋아요 0 조회수 461

질문이 있어요~

미해결

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

안녕하세요! Model에 데이터를 보관할 때 request.setAttribute를 사용하잖아요. 근데 model에 있는 데이터는 응답으로 나가야하는 데이터면 response가 아닐까라는 생각이 들었는데,, request에서 온 파라미터를 꺼내서 객체를 만들고 model에 그 데이터를 보관해서 뷰로 나가는 거니까 request인건가요? 감사합니다..

  • MVC
  • spring
spring 댓글 1 좋아요 0 조회수 175

자료형 제어문이 나오지 않습니다.

미해결

Jupyter Notebook으로 시작하는 Python

주피터 노트북 실행까지는 되었으나 자료형 제어문등이 나오지 않습니다.

  • python
Jung Jin-woong 댓글 2 좋아요 0 조회수 328

타입 오류 처리 시점에 대해 질문드립니다!

미해결

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 여기에 질문 내용을 남겨주세요. 강사님 안녕하세요! 항상 좋은 수업 감사합니다. 28분 45초 부근에서 타입 오류 처리(필드 타입 Integer인데 사용자가 String으로 입력하는 경우) 스프링 MVC에서 컨트롤러에 진입하기 전에 터진다는 말씀을 듣고 궁금증이 생겨 질문드립니다! 스프링 MVC1 강의에서, ModelAttribute 사용시 요청 파라미터로부터 리소스 객체를 만들고 setXXXX함수가 자동으로 실행되어 필드값이 설정된다고 설명해주셨었습니다. 이 경우, RequestMapping을 통해 컨트롤러에는 진입하지만 setXXXX함수가 실행되는 과정에서 객체의 필드와 타입이 매칭되지 않아 예외를 발생시키는 것이라고 이해하면 될까요? 아니면 타입 오류를 처리하는 별도의 로직이 스프링에 내장되어 있을까요? 제가 이해한 실행 흐름대로면 타입 체크가 들어갈만한 부분이 setXXXX 메서드 말고는 없을것같은데, 또 스프링이 워낙 많은 기능을 제공하다보니 컨트롤러 진입 전에 뭔가 해줄것 같기도 하고 그렇네요 ...ㅎㅎㅎ

  • 타입오류처리
  • MVC
  • spring
beSlow 댓글 1 좋아요 1 조회수 280

람다식 질문

해결됨

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요?예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 여기에 질문 내용을 남겨주세요. 안녕하세요. 강의 항상 잘 듣고 있습니다. 또한 항상 수고스럽게 답변해주시는 서포터 분들에게 먼저 감사 말씀 드립니다. 람다식의 용법에 대해서 궁금한 점이 있습니다. private Map<String , String> createParamMap (HttpServletRequest request) { Map<String , String> paramMap = new HashMap<>() ; request.getParameterNames().asIterator() .forEachRemaining(paramName -> paramMap .put(paramName , request .getParameter(paramName))) ; return paramMap ; } 위의 코드에서 paramName -> paramMap.put(paramName, request.getParameter(paramName))); 의 라인에서 paramName 이라는 매개변수를 어떻게 사용할 수 있는건가요? 람다식이 (파라미터) -> (로직) 의 형태((a,b) -> (a+b)로 사용하는 문법인 걸로 알고 있는데 위의 코드가 paramName이라는 매개변수를 받아서 paramMap에 paramName이라는 Key와 request.getParameter(paramName)이라는 Value를 넣는 것으로 이해했습니다. 그런데 paramName을 선언한 곳은 없는데 어떻게 사용할 수 있을까요? 자바 문법적인 강의는 영한 선생님께서 기본이라 안 해주시지만, 이미 기본서를 읽고 왔고 나름대로 검색을 해봤는데도 해답을 얻을 수가 없어서 질문을 남기게 되었습니다.

  • MVC
  • spring
명수찬 댓글 1 좋아요 2 조회수 606

/와 //

미해결

입문자를 위한 파이썬 기초 따라잡기

/ 와//둘 다 나누기로 몫이 나오나요? 코드 실행했을때 값이 다르게 나와서요

  • python
  • python
장인서 댓글 0 좋아요 0 조회수 391

에디터 모드 calc

미해결

입문자를 위한 파이썬 기초 따라잡기

에디터 모드에 작성한 calc가 실행된게 왜 쉘모드에서 보여지는 건가요?

  • python
  • python
  • idle
장인서 댓글 0 좋아요 0 조회수 312

html에서 id 속성에 대해 간단한 질문..

해결됨

[신규 개정판] 이것이 진짜 크롤링이다 - 기본편

어느 사이트에서든 어떤 태그 내의 id 속성값은 유일무이하게 해당 태그에서만 사용된다고 봐도 정말로 문제없나요? 이전에 html 실습하면서 공부했을 때 id속성이나 class속성이나 두개 사용하면서 크게 다른게 없다고 느꼈는데 이 영상을 보면서 id가 실무에서는 해당 태그에만 적용되도록 사용하는건지 정확히 알고싶습니다.

  • 웹-크롤링
  • python
이시웅 댓글 1 좋아요 1 조회수 247

안녕하세요 localhost:8080/hello 부분 질문드립니다.

해결됨

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

안녕하세요 localhost:8080/hello를 요청하는 부분에서 매핑페이지가 없다고 오류가 나옵니다. // hello 서블릿 클래스 입니다. //서버는 8080포트라고 잘 뜹니다. //스프링부트 메인 클래스 입니다. 스프링부트 메인페이지가 최상단에 위치해야 한다고 하여 main 클래스를 확인해보아도 hello.servlet 으로 위치해있고 , 위치를 hello로 바꾸어도 결과는 똑같았습니다. webapp에 만들어놓은 정적 페이지를 요청했을땐 잘 실행이 됩니다. 그 이후에 response 등등 여러 클래스를 만들었던 url로 요청을해도 모두 매핑페이지가 없다고 뜹니다. 감사합니다

  • 서버요청
  • MVC
  • spring
쩜현 댓글 1 좋아요 0 조회수 433

뷰 관련 파일을 webapp 폴더아래에 넣었을 스프링이 인식하는 과정

해결됨

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

예전에 레거시로 스프링 프로젝트를 작성할때는 pom.xml에 폴더 경로를 써줬던 것 같은데 제가 못찾는 것이거나 부트를 사용해서 그런지 그런 설정을 찾아볼 수가 없네요. 혹시 webapp 폴더에 넣어야 한다는 설정을 어디서 찾아볼 수 있을까요??

  • MVC
  • spring
skj3232 댓글 1 좋아요 5 조회수 2544

인기 태그

인프런 TOP Writers

주간 인기글