본문 바로가기
dev/Spring

[Spring] form:form 태그 공부

by dev_Step 2022. 6. 19.

form:form 태그란

 >> Spring에서 제공해주는 태그라이브러리로 아래의 태그라이브러리를 import 해주면 된다.

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

 

사용방법으론.

 >> 아래와 같은 형태가 기본형태이다.

<form:form modelAttirubte="user">


</form:form>

 >> "action 속성"을 명시하지 않으면 현재 페이지의 URL을 Action 속성값으로 가진다.

 >> method의 default는 POST 방식이다.

  ex) 현재 페이지의 URL이  " localhost/ch2/register/add " 인경우 POST 요청을 보내면 " localhost/ch2/register/add

         동일한 주소의 POST 방식으로 요청이 들어간다.

form:form이 form으로 자동으로 변경된다.
위의 form:form이 변경된 모습

        /register/add 요청이 GET 방식일때는  윗부분에 맵핑되고.

        /register/add  요청이 POST 방식일떄는 아래부분에 맵핑이된다.

   추가 적으로 form:form 태그에서 ACTION에서는 <c:uri> 태그를 사용하지 못한다 그래서

    ${pageContext.request.contextPath} 를 사용하여 추가해줘야 한다.

  <form:form modelAttribute="user" action="${pageContext.request.contextPath}/register/save">

다른 방법으로는 

<c:url> 태그를 생성한 후 해당 변수명을 EL을 사용하여 action에 대입하여 주는 방식이 있다.

	<c:url value="/register/save" var="insertUrl" />
    <form:form modelAttribute="user" action="${insertUrl }">

 

 

 modelAttribute 는 무엇인가

  >> form:form을 Requset요청을 받을 객체를의미하며, 해당 URL과 맵핑되어 있는 함수의 매개변수에 참조변수명과 동일하게 일치 시켜주거나

   >> @ModelAttribute 어노테이션을 이용하여 요청한 user 를 받는 객체를 맵핑시켜주면된다

 

 

>> cssClass : 폼에 클래스를 지정한다.

<style>
	.style { margin:0; padding:0; }
</style>

<form:form cssClass="style"> ... </form>

 

>> cssStyle : 인라인 스타일을 넣습니다.

 

<form:form cssStyle="margin:0;padding:0;"> 
   	<form:input>		This tag is used to generate the text field.
	<form:radiobutton>	This tag is used to generate the radio buttons.
	<form:checkbox>		This tag is used to generate the checkboxes.
	<form:password>		This tag is used to generate the password input field.
	<form:select>		This tag is used to generate the drop-down list.
	<form:textarea>		This tag is used to generate the multi-line text field.
	<form:hidden>		This tag is used to generate the hidden input field.
</form>

 

>> enctype : 파일 업로드를 위한 속성 입니다.

 

<form:form enctype="multipart/form-data">

</form>

 

 

'dev > Spring' 카테고리의 다른 글

[Spring] Di 따라하기 1  (0) 2022.06.22
[Spring] Export / Import  (0) 2022.06.20
[Spring] 데이터 검증  (0) 2022.06.18
[Spring] 데이터 변환  (0) 2022.06.18
[Spring] Spring MVC vs RESTful  (0) 2022.06.16