SpringMVC后台传递参数到页面
控制器中的参数传递到页面,常见的有两种方式:
方式一: 通过Model来传参(model对象来传递)
model中有两个方法可以使用:model.addAttribute(object)和model.addAttribute("名字",object)。
传递后,在页面上通过EL表达式来获取,show页面代码如下:
方式二: 通过内置对象来传递
除了model传递参数以外,我们还可以通过request,session来传递,代码如下:
控制器中的参数传递到页面,常见的有两种方式:
方式一: 通过Model来传参(model对象来传递)
@Controller
@RequestMapping("mfc")
public class FirstController {
@RequestMapping(value="fr")
public String secondRequest(Model model){
String key = "hello world";
model.addAttribute("key", key);
//此时没有定义变量的名字,默认就用这个参数的类型的名字做为变量的名字,不过首字母大写变小写
model.addAttribute("xxxxxxx");
return "show";
}
}
model中有两个方法可以使用:model.addAttribute(object)和model.addAttribute("名字",object)。
传递后,在页面上通过EL表达式来获取,show页面代码如下:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<h2>这里是show.jsp页面</h2>
通过model传递到页面的参数key:${key }<br/>
获取model单个参数存储的变量:${string }<br/>
</body>
</html>
方式二: 通过内置对象来传递
除了model传递参数以外,我们还可以通过request,session来传递,代码如下:
@Controller
@RequestMapping("mfc")
public class FirstController {
@RequestMapping(value="fr")
public String secondRequest(HttpServletRequest request,HttpSession session){
request.setAttribute("req", "通过request存放的参数");
session.setAttribute("ses", "session中的数据");
return "show";
}
}
页面上,还是通过EL表达式来获取,show页面内容如下:
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<h2>这里是show.jsp页面</h2>
获取request中的参数:${req }<br/>
获取session中的参数:${ses }
</body>
</html>