Springmvc 는 어떻게 프론트 데스크 에 데 이 터 를 전달 합 니까?
① 그 중에서 Map 과 ModelMap 의 사용 방식 이 일치 하 다.
@RequestMapping("/detail")
public String detail(Integer id,
//ModelMap modelMap
Map modelMap
){
HashMap<String,String> conditions=new HashMap<>();
conditions.put("sal","88888888");
conditions.put("age","35");
//todo
System.out.println(" id "+id+" ");
User user=new User(id," ",18," "," ",
new Role(" ",23),
conditions,
Arrays.asList(" "," "));
// modelMap map ==>request.setAttribute(key,value)
modelMap.put("user",user);
return "detail.jsp";
}
② Model 은 addAttribute 를 통 해 만 전 송 됩 니 다.
@RequestMapping("/detail")
public String detail(Integer id,
Model model){
HashMap<String,String> conditions=new HashMap<>();
conditions.put("sal","88888888");
conditions.put("age","35");
//todo
System.out.println(" id "+id+" ");
User user=new User(id," ",18," "," ",
new Role(" ",23),
conditions,
Arrays.asList(" "," "));
// Model
model.addAttribute("user",user);
return "detail.jsp";
}
2)정 의 된 방법의 반환 값 유형 은 모델 앤 드 뷰 입 니 다.방법 에서 모델 앤 드 뷰 를 만 들 고 점프 하 는 페이지 와 전 달 된 데 이 터 를 지정 하고 마지막 으로 모델 앤 드 뷰 대상 을 되 돌려 줍 니 다.3)주석 을 통 해@ModelAttribute;
4)방법 매개 변수 에서 Request 또는 session 대상 을 정의 하고 이에 대응 하 는 API 를 통 해
아래 2),3),4)의 상황 은 모두 아래 코드 안에 있다.
// ModelAndView
//@ModelAttribute: request 1) , request , request
// 2) , request
@RequestMapping("/detail2")
public ModelAndView detail2(Integer id, @ModelAttribute("username") String username,
HttpServletRequest request,
HttpSession session,
HttpServletResponse response
){
request.setAttribute("requestTest"," ");
session.setAttribute("sessionTest","session ");
HashMap<String,String> conditions=new HashMap<>();
conditions.put("sal","88888888");
conditions.put("age","35");
//todo
System.out.println(" id "+id+" ");
User user=new User(id," ",18," "," ",
new Role(" ",23),
conditions,
Arrays.asList(" "," "));
// ModelAndView
ModelAndView modelAndView=new ModelAndView();
//
modelAndView.addObject("user",user);
// / , ( webapp )
// / , RequestMapping /
modelAndView.setViewName("detail.jsp");
return modelAndView;
}
// request
@ModelAttribute(name = "modelAttributeTest")
public String test(){
return " @ModelAttribute ";
}
detail.jsp 의 코드 는 다음 과 같 습 니 다.
<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
<html>
<head>
<title> </title>
</head>
<body>
<h1> </h1>
<table>
<tr>
<td> </td>
<td>${user.name}</td>
<td> </td>
<td>${user.age}</td>
</tr>
<tr>
<td> </td>
<td>${user.sex}</td>
<td> </td>
<td>${user.addr}</td>
</tr>
<tr>
<td> ID</td>
<td>${user.role.id}</td>
<td> </td>
<td>${user.role.name}</td>
</tr>
<tr>
<td> 1</td>
<td>${user.conditions.sal}</td>
<td> 2</td>
<td>${user.conditions.age}</td>
</tr>
<tr>
<td> </td>
<td>${user.hobbies}</td>
</tr>
</table>
@ModelAttribute :${username}<br/>
@ModelAttribute 2:${modelAttributeTest}<br/>
request 3:${requestTest}<br/>
session 4:${sessionTest}
</body>
</html>
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
thymeleaf로 HTML 페이지를 동적으로 만듭니다 (spring + gradle)지난번에는 에서 화면에 HTML을 표시했습니다. 이번에는 화면을 동적으로 움직여보고 싶기 때문에 입력한 문자를 화면에 표시시키고 싶습니다. 초보자의 비망록이므로 이상한 점 등 있으면 지적 받을 수 있으면 기쁩니다! ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.