Open seulgi9834 opened 2 years ago
form 태그 사용
<form method="get" action="form/saveGet"> <p> input 태그<br> <input type="text" name="title"> </p> <p> textarea 태그<br> <textarea rows="10" cols="100" name="content"></textarea> </p> <p> select 태그<br> <select name="viewYn"> <option value="Y">공개</option> <option value="N">비공개</option> </select> </p> <input type="submit" value="전송버튼"> </form>
태그 속성
form: 입력 폼 정의시 사용
action: form 데이터가 전송되는 URL
method: 폼 데이터 제출시 사용할 HTTP 메소드(전송 방법) / get, post
name: form 이름
autocomplete: 자동 완성 기능
input 태그 속성
textarea 태그 속성
select 태그 속성
model과 map 없이 받은 데이터 바로 확인(viewer.jsp)
<% String title=request.getParameter("title"); String content=request.getParameter("content"); out.print(title+" "+content); %>
form 컨트롤러
import java.util.HashMap; import java.util.Map; import javax.servlet.http.HttpServletRequest; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; @Controller @RequestMapping(value="form") public class FormController { //form 페이지 호출 //@return @RequestMapping(value = "", method = RequestMethod.GET) public String form() { return "form/form"; } @RequestMapping(value = "saveGet", method = RequestMethod.GET) public String saveGet(HttpServletRequest request, Model model) { // HttpServletRequest 객체 안의 메소드를 이용해 데이터를 꺼냄 String title = request.getParameter("title"); String content = request.getParameter("content"); String viewYn = request.getParameter("viewYn"); System.out.println("제목:" + title); System.out.println("내용:" + content); System.out.println("공개여부:" + viewYn); Map<String, String> map = new HashMap<String,String>(); map.put("title", title); map.put("content", content); map.put("viewYn", viewYn); model.addAttribute("map",map); if(viewYn.equals("N")) { return "redirect:https://naver.com"; } return "form/viewer"; } }
return "redirect:https://naver.com";
return "forward:/form";
Model이나 HashMap을 통해 전달 받은 데이터 확인(viewer.jsp)
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <c:choose> <c:when test='${map.viewYn == "Y" }'> <h1>${map.title }</h1> <p> ${map.content } </p> </c:when> <c:otherwise> <p> 비공개 글 입니다.</p> </c:otherwise> </c:choose>
오 슬기님이 추가로 알려주신 것들 덕분에 많이 알아갑니다. 감사합니다 :-)
HttpServletRequest 사용한 값 받기
form: 입력 폼 정의시 사용
action: form 데이터가 전송되는 URL
method: 폼 데이터 제출시 사용할 HTTP 메소드(전송 방법) / get, post
name: form 이름
autocomplete: 자동 완성 기능
input 태그 속성
textarea 태그 속성
select 태그 속성
Redirect
Forward