스프링 MVC Model을 통해 컨트롤러에서 뷰에 데이터 전달하기

 

DTO

package spring;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;

@Data
@Setter
@AllArgsConstructor
@NoArgsConstructor
@ToString

public class MemberRegistRequest {
	private String[] favoriteOs;
	
	public String[] getFavoriteOs() {
		return favoriteOs;
	}
	
	
	
	
}

 

Controller

	@GetMapping("/regos")
	public String regos1(Model model) {
		model.addAttribute("osList", Arrays.asList("윈도우10", "윈도우11", "맥OS", "리눅스")); 
		model.addAttribute("memberRegisterRequest", new MemberRegistRequest());
		return "regosForm";
	}
	
	@PostMapping("/regos")
	public String regos2(@ModelAttribute("memberRegisterRequest") MemberRegistRequest mrrRequest) {
		log.info("-----------" + mrrRequest);
		
		return "regosResult";
	}

 

JSP ( 입력 Form )

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    <%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
    <%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h2><spring:message code="member.register"></spring:message></h2>

<form:form cssStyle="color : red" method="post" modelAttribute="memberRegisterRequest">
<p>
운영체제 선택:<br/>
<label><form:checkboxes items="${osList}" path="favoriteOs" /></label>
</p>
<input type="submit">
</form:form>

</body>
</html>

 

JSP ( 결과 )

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>선택한 운영체제</title>
</head>
<body>
<h2>선택한 운영체제</h2>

<p>선택한 운영체제 목록:</p>
<ul>
    <c:forEach items="${memberRegisterRequest.favoriteOs}" var="os">
        <li>${os}</li>
    </c:forEach>
</ul>

<a href="<c:url value="/regos" />">돌아가기</a>

</body>
</html>

 

 

'프로젝트 기반 자바(JAVA) 응용 SW개발자 취업과정' 카테고리의 다른 글

2023-08-25 69일차  (0) 2023.08.25
2023-08-24 68일차  (0) 2023.08.24
2023-08-22 66일차  (0) 2023.08.23
2023-08-21 65일차  (0) 2023.08.21
2023-08-18 64일차  (0) 2023.08.20

+ Recent posts