Spring 学习笔记5—— SpringMVC的参数传递
来源:互联网 发布:程序员不想谈恋爱 编辑:程序博客网 时间:2024/06/08 15:58
在View上显示Controller里的变量
使用Map
package com.xundh.controller;import java.util.Map;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;@Controllerpublic class HelloWorldController { @RequestMapping("/hello") public String helloWorld(Map<String,Object> map) { map.put("hello", "world"); return "hello"; }}
WEB-INF/Views/hello.jsp
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <base href="<%=basePath%>"> <title>My JSP 'index.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> </head> <body> ${hello}. <br> </body></html>
使用Model类对象
HelloWorldController
package com.xundh.controller;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.RequestMapping;@Controllerpublic class HelloWorldController { @RequestMapping("/hello") public String helloWorld(Model model) { model.addAttribute("hello", "hello value"); return "hello"; }}
hello.jsp
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <base href="<%=basePath%>"> <title>My JSP 'index.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> </head> <body> ${hello}. <br> </body></html>
如果是个复合类,如User类对象,页面上用
从View向Controller传值
从控制器获取request参数
HelloWorldController.java
@Controllerpublic class HelloWorldController { @RequestMapping("/hello") public String helloWorld(@RequestParam int id,Map<String,Object> map) { System.out.println("获取request参数:id="+id); return "hello"; } }
完整的写法是:
@RequestParam(value="name",required=false)
不写注解也可以使用。
对象类型传值
HelloWorldController.java
package com.xundh.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;@Controllerpublic class HelloWorldController { @RequestMapping("/hello") public String helloWorld(User user) { System.out.println(user.getName()); return "hello"; }}
WebRoot/index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <base href="<%=basePath%>"> <title>Welcome</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> </head> <body> <form name="form1" action="hello" method="post"> <input type="text" name="name"/> <input type="submit" value="submit" /> </form> </body></html>
hello.jsp
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <base href="<%=basePath%>"> <title>My JSP 'index.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> </head> <body> ${user.name}. <br> </body></html>
点击提交后:
限定使用Post
@RequestMapping(value="/hello4",method=RequestMethod.POST)
限定编码
在web.xml里设置
<filter> <filter-name>encodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter </filter-class> <init-param> <param-name>encoding</param-name> <param-value>utf8</param-value> </init-param></filter><filter-mapping> <filter-name>encodingFilter</filter-name > <url-pattern>/*</url-pattern></filter-mapping>
0 0
- Spring 学习笔记5—— SpringMVC的参数传递
- springMVC学习笔记---参数传递
- SpringMVC学习笔记(6) 参数的传递+乱码解决
- SpringMVC学习笔记(五):参数传递
- springmvc学习笔记(7)——传递对象作为参数(POJO)
- springmvc学习笔记——传递对象作为参数(POJO)
- SpringMVC 学习 03 - spring mvc的获取参数和传递参数
- C++学习笔记12——函数的参数传递
- C++学习笔记——函数的参数传递
- C#学习笔记——参数传递
- springmvc参数的传递
- springmvc参数的传递
- springmvc学习笔记(31)——spring整合springmvc
- springMVC系列之前台参数的传递——05
- 随笔笔记三——关于SpringMVC接收请求参数和向页面传递参数
- springMVC参数的传递方式
- SpringMvc(2)--参数的传递
- springMVC参数的传递方式
- C++学习框架 总结(简单步骤)
- 【转】system() 函数 -- C语言
- 组合博弈理论
- ACM竞赛之新人向导
- #ArcGIS 10.5# 正式版安装教程
- Spring 学习笔记5—— SpringMVC的参数传递
- Oracle表被锁死如何解锁
- 看完《毕业时刻》有感,随便写点
- Win7下apache出现问题:“No services installed” || apache服务启动
- 【普里姆算法】最小生成树-例题
- java中的“包”与C#中的“命名…
- 第三届蓝桥杯决赛_本科一题
- C标准库学习之<stddef.h> ——定义部分宏
- PHP4 与 MySQL 数据库操作函数