java spring form 태그
2018.01.24 15:31
java spring form 태그
Spring Form Tag는 Spring Web MVC와 연동된 태그 라이브러리로써,
커맨드 객체 및 컨트롤러의 데이터에 접근할 수 있습니다.
스프링 폼 태그는 webmvc.jar 파일안에 있는 spring-form.tld를 필요로 합니다.
jsp파일 상단에 다음과 같이 선언해줍니다.
<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
데이터 바인딩을 해주기 위해 커맨드네임을 지정해주고, path로 property를 받아옵니다.
* jsp
<form:form commandName="bbs">
//cssClass를 통해 클래스를 줄 수 있습니다.
글번호 : <form:input path="no" cssClass="SPRING_FORM_CSS_CLASS_EXAMPLE"/>
제목 : <form:input path="title"/>
<br/>
내용 : <form:textarea path="content"></form:textarea>
<br/>
취미 : <form:checkbox path="hobby" value="0" label="독서"/>
<form:checkbox path="hobby" value="1" label="게임"/>
<form:checkbox path="hobby" value="2" label="산책"/>
<br/>
성별 : <form:radiobutton path="sex" value="0" label="남자"/>
<form:radiobutton path="sex" value="1" label="여자"/>
<br/>
글 비밀번호 : <form:password path="password" showPassword="true"/>
<br/>
글 속성 : <form:checkboxes path="bbsProp" items="${bbsPropOption}"/>
<br/>
연령 : <form:radiobuttons path="age" items="${ageOption}"/>
<br/>
최종학력
<form:select path="academicAbility">
<form:options items="${academicAbilityOption}"/>
</form:select>
<br/>
지역 <form:select path="location" items="${locationOption}"/>
<br/>
</form:form>
* controller
Map bbsPropOption = new HashMap();
bbsPropOption.put("notice","공지");
bbsPropOption.put("secret","비밀글");
model.addAttribute("bbsPropOption",bbsPropOption);
ArrayList ageOption = new ArrayList();
for(int i=1;i<=8;i++)
{
ageOption.add(i*10);
}
model.addAttribute("ageOption",ageOption);
Map locationOption = new HashMap();
locationOption.put("seoul","서울");
locationOption.put("busan","부산");
locationOption.put("incheon","인천");
model.addAttribute("locationOption",locationOption);
ArrayList academicAbilityOption = new ArrayList();
academicAbilityOption.add("초졸");
academicAbilityOption.add("중졸");
academicAbilityOption.add("고졸");
academicAbilityOption.add("대졸");
model.addAttribute("academicAbilityOption",academicAbilityOption);
Bbs bbs = new Bbs();
bbs.setNo(24);
bbs.setTitle("타이틀");
int[] hobby = new int[2];
hobby[0]=1;
hobby[1]=2;
bbs.setHobby(hobby);
bbs.setSex(1);
bbs.setPassword("passwdfwf");
bbs.setContent("http://goldenraccoon.tistory.com");
List bbsProp = new ArrayList();
bbsProp.add("secret");
bbsProp.add("notice");
bbs.setBbsProp(bbsProp);
bbs.setAge(30);
bbs.setLocation("busan");
bbs.setAcademicAbility("고졸");
model.addAttribute("bbs",bbs);
* domain
public class Bbs {
private int no;
private String title;
private int hobby[];
private int sex;
private String password;
private String Content;
private List bbsProp;
private int age;
private String location;
private String academicAbility;
getter/setter....
}
예제로 설명을 대체합니다.
출처: http://goldenraccoon.tistory.com/entry/Spring-Form-태그 [황금너구리 블로그]
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.

