java-jsp springmvc-controller 传值到页面的方法

2023-05-24,,

借助 org.springframework.ui.Model 对象或 Map 对象将信息传到 springmvc 的页面中

需要:jstl 支持 和 EL 表达式

1.maven 添加依赖:

<!-- jstl(jsp 标准标签库) --> 
;dependency> 
 <groupId>jstl</groupId> 
 <artifactId>jstl</artifactId> 
 <version>1.2</version> 
;/dependency> 

2.controller 中的方法

/** 
*
*/
@Controller
@RequestMapping("/hello")
public class HelloController {
	/**
	 * 请求地址:项目名/hello/userinfo
	 * @return
	 */
	@RequestMapping("userinfo")
	public String userinfo(org.springframework.ui.Model model,Map<String, Object> map){
		//传递单个对象
		UserInfoModel info = new UserInfoModel("张三",99,"男");
		model.addAttribute("info",info);		
		
		List<UserInfoModel> list = new ArrayList<UserInfoModel>();
		list.add(new UserInfoModel("李四",20,"男"));
		list.add(new UserInfoModel("王五",21,"女"));
		list.add(new UserInfoModel("赵六",22,"男"));
		
		//传递多个对象
		map.put("user_list", list);
		
		return "hello/userinfo"; //servlet.xml 中定义的 前缀(prefix)+返回值+后缀(suffix)拼接的物理地址
	}
}

3.测试实体对象

package demo.models.hello;
import java.util.Date;
/** 
*
*/
public class UserInfoModel {
	public UserInfoModel(String name,int age,String sex){
		this.name=name;
		this.age=age;
		this.sex=sex;
		this.date = new Date();
	}
	String name;
	int age;
	String sex;
	Date date;
	
	public Date getDate() {
		return date;
	}
	public void setDate(Date date) {
		this.date = date;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public String getSex() {
		return sex;
	}
	public void setSex(String sex) {
		this.sex = sex;
	}
	
}

4.jsp 页面

<%@ page language="java" contentType="text/html; charset=utf-8"
	pageEncoding="utf-8"%>
<!-- 引入jstl core库 ,使用 循环标签-->	
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!-- 引入jstl fmt库,格式化时间标签 -->
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<!-- 开启 EL 表达式支持 -->
<%@ page isELIgnored="false"%>
<!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>
	<script scr="/content/index.js"></script>
	<link href="/content/index.css" rel="external nofollow" />
</head>
<body>
	<h4>页面信息</h4>
	<div>url:${pageContext.request.contextPath}</div>
	<h4>用户信息</h4>
	<div>name:${info.name}</div>
	<div>age:${info.age}</div>
	<div>sex:${info.sex}</div>
	<div>date:<fmt:formatDate pattern="yyyy-MM-dd HH:mm:ss" value="${info.date}" /></div>
	<h4>用户列表</h4>
	<table border="1">
	<tr>
		<td>name</td>
		<td>age</td>
		<td>sex</td>
		<td>date</td>
	</tr>
	<c:forEach items="${user_list}" var="p">
	<tr>
		<td>${p.name}</td>
		<td>${p.age}</td>
		<td>${p.sex}</td>
		<td><fmt:formatDate pattern="yyyy-MM-dd HH:mm:ss" value="${p.date}"/></td>
	</tr>
	</c:forEach>
	<tr>
		<td colspan="4" >jstl forEach</td>
	</tr>	
	<tr>
		<td>行号</td>
		<td>col1</td>
		<td>col2</td>
		<td>col3</td>
	</tr>
	<c:forEach begin="1" end="5" var="i">
	<tr>
		<td>${i}</td>
		<td>${i+2}</td>
		<td>${i+3}</td>
		<td>${i+4}</td>
	</tr>
	</c:forEach>
	</table>
</body>
</html>

以上这篇java-jsp springmvc-controller 传值到页面的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持本站。

《java-jsp springmvc-controller 传值到页面的方法.doc》

下载本文的Word格式文档,以方便收藏与打印。