欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-10-10 17:04:31
借助 org.springframework.ui.model 对象或 map 对象将信息传到 springmvc 的页面中 需要:jstl 支持 和 el 表达式 1...

借助 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>
	<h3>页面信息</h3>
	<div>url:${pagecontext.request.contextpath}</div>
	<h3>用户信息</h3>
	<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>
	<h3>用户列表</h3>
	<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" style="text-align: center;">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 传值到页面的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。