전체 글
-
Spring MVC - requestScopeSpring/Spring MVC 2021. 12. 27. 22:29
request - 브라우저의 요청 브라우저에 의해 새로운 요청이 발생하면 브라우저는 서버에 요청에 관련된 정보를 전송하게 된다. 이를 받는 서버는 브라우저가 보낸 요청 정보들을 보관하기 위해 HttpServletRequest 객체를 생성해 요청 정보들을 담아 두게 된다. 요청 정보가 담겨 있는 HttpServletRequest 객체는 응답 결과가 브라우저로 전송될 때까지 유지되며 사용이 가능함 (즉, forward 가 진행되면 HttpServletRequest 객체 유지) requestScope - request와 관련된 데이터들의 생존 범위 새로운 요청이 발생해 응답결과가 브라우저로 전달될 때까지 요청 정보가 담겨 있는 request 객체를 사용 가능 이러한 사용 범위는 requestScope라고 부른..
-
Spring MVC - Redirect와 ForwardSpring/Spring MVC 2021. 12. 27. 11:37
Redirect와 Forward Redirect는 서버가 응답 결과로 준 URL을 클라이언트 측에서 다시 한번 서버에 요청하는 방식이고, Forward는 URL을 유지하며 Controller에서 요청받은 URL에 따른 메서드를 실행하고, 그 메서드가 또 다른 메서드를 실행시키는 방법을 의미한다. 아래에서 자세히 알아보자. 더보기 메서드의 리턴 Controller를 통해 요청 주소와 매핑되어 있는 메소드는 반드시 반환 값을 가져야 한다. 지금까지 문자열, Model, ModelAndView 로 반환해 보았다. 클라이언트에게 전달할 응답을 전해주기 위해 JSP를 지정하는 부분이다. JSP 지정하는 방식은 redirect와 forward 두 가지가 있다. redirect 클라이언트에게 요청할 주소를 응답 결과..
-
Spring MVC - form 요소 - select, option, options, checkbox, checkboxs, radiobutton, radiobuttonsSpring/Spring MVC 2021. 12. 27. 02:04
form 요소 - select, option, options, checkbox, checkboxs, radiobutton, radiobuttons 공통부분 DataBean.java 와 MapBean.java public class DataBean { private String a1; private String a2; private String a3; private String a4; private String [] a5; private String [] a6; private String [] a7; private String [] a8; private String a9; private String a10; private String a11; private String a12; .../* getter se..
-
Spring MVC - form 속성 - form, button, hidden, input, textareaSpring/Spring MVC 2021. 12. 27. 00:37
더보기 43. spring-form JSP Tag Library 43. spring-form JSP Tag Library Renders a list of HTML 'option' tags. Sets 'selected' as appropriate based on bound value. Table 43.10. Attributes AttributeRequired?Runtime Expression?DescriptioncssClassfalsetrueEquivalent to "class" - HTML Optional AttributecssErrorClassfalsetrueEquiv docs.spring.io form 요소 - form, button, hidden, input, textarea 다양한 form 태그들..
-
Spring MVC - 폼 커스텀 태그(Form Custom Tag)Spring/Spring MVC 2021. 12. 26. 22:26
폼 커스텀 태그(Form Custom Tag) Spring에서는 형태로 되어 있는 커스텀 태그를 제공 Form 커스텀 태그를 활용하면 Model 객체에 들어있는 값을 form 요소에 주입 가능 데이터 개수가 많은 정보 수정 페이지를 구성할 때 자주 쓰인다. (회원 정보 수정) 일반 Form 태그보다 사용하기 편리하다. Form 태그 우선 Form 커스텀 태그와 어떤 차이가 있는지 JSP에서 데이터들을 추출하여 Form 태그를 이용해 화면을 나타내 보자. index.jsp test1 testController.java @Controller public class testController { @GetMapping("/test1") public String test1(@ModelAttribute("data1..
-
Spring MVC - 커맨드 객체(Command Object)Spring/Spring MVC 2021. 12. 26. 21:19
커맨드 객체(Command Object) 커맨드 객체는 HttpServletRequest 객체에 자동으로 담기고 jsp로 전달된다. 커맨드 객체에 이름을 정해주지 않으면 HttpSevletRequest 객체에 저장되는 이름은 클래스의 이름으로 저장되고, 이름을 정해주면 해당 이름으로 HttpSevletRequest 객체에 저장된다 커맨드 객체 이름을 정해주지 않을 경우 커맨드 객체 이름을 정해주지 않으면 자동으로 클래스 이름으로 설정이 된다. (단, 첫 글자는 소문자로 바뀐다.) inde.jsp data1 : data2 : 확인 testController.java @Controller public class testController { @PostMapping("/test1") public String ..
-
Spring MVC - JSP에 데이터 전달Spring/Spring MVC 2021. 12. 26. 17:26
ViewResolver란? 컨트롤러에서 전달받은 View의 이름을 토대로 JSP를 찾아주며 JSP에서 사용하는 데이터를 분석해 응답 결과(사용자 요청 화면)를 만들어 전달하는 요소이다. JSP를 통해 응답 결과를 처리할 때 필요한 데이터를 JSP에 전달하는 방법에 대해 알아보자. jsp에 데이터 전달 방법 param HttpSevletRequest Model ModelAndView 위 4가지 방법은 개발자의 취향 차이이다. 어떤 방법을 쓰던 상관없다. param 클라이언트에서 서버로 전달한 데이터들은 JSP에서 그대로 사용할 수 있다. index.jsp test1 testController.java @Controller public class testController { @GetMapping("/tes..
-
Spring MVC - @ModelAttribute : 객체로 쿼리 파라미터 바인딩Spring/Spring MVC 2021. 12. 26. 14:49
@ModelAttribute : 객체로 쿼리 파라미터 바인딩 쿼리 파라미터로 넘어오는 변수들은 객체로 주입받을 수 있다. @ModelAttribute로 쿼리 파라미터 데이터들을 객체로 주입받기 @ModelAttribute을 이용하면 쿼리 파라미터의 데이터들은 객체의 프로퍼티로 바인딩이 된다. 즉, 전달되는 쿼리 파라미터의 이름과 동일한 프로퍼티에 자동으로 바인딩이 된다. 프로퍼티에 해당하는 쿼리 파라미터가 없을 경우 기본값이 들어간다. @ModelAttribute는 생략이 가능하다. 이러한 객체를 커맨드 객체(Command Object)라 부른다. request영역에 자동으로 저장이 된다. 먼저 쿼리 파라미터의 데이터들을 주입받을 수 있는 객체를 생성하기 위해 클래스를 생성한다. @Data public ..