Spring MVC의 다양한 기능들-(2)

728x90

15강. 커맨드 객체 이용하기 

[커맨드 객체]

-클라이언트가 전달해주는 파라미터 데이터 주입받기 위해 사용하는 객체

@PostMapping("/test1")
public String test1(@ModelAttribute DataBean bean) {
	return "test1";
}

 

▶[Request 를 통해 전달]

-커맨드 객체는 HttpServletRequest 객체에 자동으로 담기고 jsp로 전달됨

-이 때, HttpServletRequest 객체에 저장되는 이름은 '클래스 이름'으로 결정

@PostMapping("/test1")
public String test1(@ModelAttribute DataBean bean) {
	return "test1";
}
    <뷰 jsp파일 >
<h3>data1 : ${requestScope.dataBean.data1 }</h3>
<h3>data2 : ${requestScope.dataBean.data2 }</h3>

 

▶[저장되는 이름 설정]

-HttpServletRequest에 저장되는 이름 지정하고 싶다면 @ModelAttribute 어노테이션에 지정하면 됨

@PostMapping("/test2")
public String test2(@ModelAttribute("testData") DataBean bean) {
	return "test2";
}

  <뷰 jsp 파일에서 해당 이름 사용>

<h3>data1 : ${requestScope.testData.data1 }</h3>
<h3>data2 : ${requestScope.testData.data2 }</h3>
커멘드 객체는 자동으로 HttpServletRequest 객체에 담기게 된다.
-> 프로젝트 오류 표시 발견되면 -> 프로젝트명 -> Maven -> Update Project 눌러서 업데이트 하면 됨 

 


16강. @Form 커스텀 태그

[@Form 태그]

-Spring에서는 <form:태그명> 형태로 되어있는 커스텀 태그 제공 

-Form 커스텀 태그 활용 -> Model 객체 값을 form 요소에 주입 가능 O

-회원 정보 수정 등 정보 수정 페이지 구성 시 사용 多

<form:form modelAttribute="dataBean" action='test2'>
    user name : <form:input path="userName"/><br/>
    user age : <form:input path='userAge'/><br/>
    user id : <form:input path='userId'/><br/>
</form:form>
<form:> 커스텀 태그를 이용하면 Model 객체와 유기적으로 동작할 수 있습니다.

17강. Form 요소

 -해당 뷰 JSP 파일에 form 태그 사용을 위해 tag 제공하는 라이브러리 추가 선언 필요 

<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>

- form 커스텀 태그를 사용하면 사용자 입력폼 만들 수 있음

-주로 정보 수정 페이지 구성 시 사용 多

<form> 태그를 위한 커스텀 태그 <form:form>
<input> 관련 커스텀 태그  <form:input>, <form:password>, <form:hidden>
<select> 관련 커스텀 태그  <form:select>, <form:options>, <form:option>
체크 박스 관련 커스텀 태그  <form:checkboxes>, <form;checkbox>
라디오 버튼 관련 커스텀 태그  <form:radiobuttons>, <form:radioutton>
<textarea> 태그를 위한 커스텀 태그 <form:textarea> 

   <form:form> 태그 

-form 태그 생성함

-modelAttribute : form 태그 내의 입력 요소들에 적용될 value 값을 가진 객체 이름 

-action : 요청 주소 설정 . 생략 시 현재 페이지 설정됨

-method : 요청 방식을 설정. 생략 시 post로 기본 설정됨

[참고] - 만들면서 배우는 Spring MVC 5

728x90