java 页面接收参数_详解SpringMVC——接收请求参数和页面传参
spring接收请求参数:
1,使用HttpServletRequest获取
@RequestMapping("/login.do")
public String login(HttpServletRequest request){
String name = request.getParameter("name")
String pass = request.getParameter("pass")
}
2,Spring会自动将表单参数注入到方法参数,和表单的name属性保持一致。和Struts2一样
@RequestMapping("/login.do")
public String login(HttpServletRequest request,
String name,
@RequestParam("pass")String password) // 表单属性是pass,用变量password接收
{
syso(name);
syso(password)
}
3,自动注入Bean属性
用户名:
密码:
//封装的User类
public class User{
private String name;
private String pass;
}
@RequestMapping("/login.do")
public String login(User user)
{
syso(user.getName());
syso(user.getPass());
}
向页面传值:
当Controller组件处理后,向jsp页面传值,
1,使用HttpServletRequest 和 Session 然后setAttribute(),就和Servlet中一样
2,使用ModelAndView对象
3,使用ModelMap对象
4,使用@ModelAttribute注解
Model数据会利用HttpServletRequest的Attribute传值到success.jsp中
@RequestMapping("/login.do")
public ModelAndView login(String name,String pass){
User user = userService.login(name,pwd);
Map data = new HashMap();
data.put("user",user);
return new ModelAndView("success",data);
}
使用ModelMap参数对象示例:
ModelMap数据会利用HttpServletRequest的Attribute传值到success.jsp中
@RequestMapping("/login.do")
public String login(String name,String pass ,ModelMap model){
User user = userService.login(name,pwd);
model.addAttribute("user",user);
model.put("name",name);
return "success";
}
使用@ModelAttribute示例
在Controller方法的参数部分或Bean属性方法上使用
@ModelAttribute数据会利用HttpServletRequest的Attribute传值到success.jsp中
@RequestMapping("/login.do")
public String login(@ModelAttribute("user") User user){
//TODO
return "success";
}
@ModelAttribute("name")
public String getName(){
return name;
}
Session存储:
可以利用HttpServletReequest的getSession()方法
@RequestMapping("/login.do")
public String login(String name,String pwd
ModelMap model,HttpServletRequest request){
User user = serService.login(name,pwd);
HttpSession session = request.getSession();
session.setAttribute("user",user);
model.addAttribute("user",user);
return "success";
}
Spring MVC 默认采用的是转发来定位视图,如果要使用重定向,可以如下操作
1,使用RedirectView
2,使用redirect:前缀
public ModelAndView login(){
RedirectView view = new RedirectView("regirst.do");
return new ModelAndView(view);
}
或者用如下方法,工作中常用的方法:
public String login(){
//TODO
return "redirect:regirst.do";
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
java 页面接收参数_详解SpringMVC——接收请求参数和页面传参相关推荐
- java mvc页面传值方式_详解SpringMVC的ModelAndView传值方法
SpringMVC的ModelAndView传值方法 SpringMVC提供的ModelAndView可以很方便的将后台的值传到前台,前台页面直接使用EL表达式进行获取,获取方式: 1. @Reque ...
- java webmethod 参数_java详解Spring接收web请求参数的方式
本篇文章给大家带来的内容是java详解Spring接收web请求参数的方式 .有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助. 1 查询参数 请求格式:url?参数1=值1&参 ...
- java新建一个女朋友_详解java创建一个女朋友类(对象啥的new一个就是)==建造者模式,一键重写...
创建一个女朋友,她有很多的属性,比如:性别,年龄,身高,体重,类型等等,虽然每个女朋友都有这些属性,但是每个人找女朋友的要求都是不一样的,有的人喜欢男的,有的人喜欢女的,有的喜欢胖的,不同的人可以根据 ...
- python中什么是可变参数_详解Python的三种可变参数
详解Python的三种可变参数 可变参数 可变参数应该最简单,在C/C++和Java等语言中都有,就是用*号来表示,例如 def testArg(*arg) 你可以传入任意多个元素(包括0)到参数中, ...
- python函数中可变参数的传递方式是_详解Python函数可变参数定义及其参数传递方式...
Python函数可变参数定义及其参数传递方式详解 python中 函数不定参数的定义形式如下 1. func(*args) 传入的参数为以元组形式存在args中,如: def func(*args): ...
- java 配置文件的路径_详解java配置文件的路径问题
详解java配置文件的路径问题 详解java配置文件的路径问题 各种语言都有自己所支持的配置文件,配置文件中有很多变量是经常改变的.不将程序中的各种变量写死,这样能更方便地脱离程序本身去修改相关变量设 ...
- python函数中可变参数的传递方式_详解Python函数可变参数定义及其参数传递方式...
Python函数可变参数定义及其参数传递方式详解 python中 函数不定参数的定义形式如下 1. func(*args) 传入的参数为以元组形式存在args中,如: def func(*args): ...
- java request获取域,Java Web - Servlet(13)HttpServletRequest详解(获取请求数据、请求分派、请求域)(二)...
Java Web -- Servlet(13)HttpServletRequest详解(获取请求数据.请求分派.请求域)(2) HttpServletRequest ----------------- ...
- java sort 第二个参数_详解java Collections.sort的两种用法
Collections是一个工具类,sort是其中的静态方法,是用来对List类型进行排序的,它有两种参数形式: public static > void sort(List list) { l ...
最新文章
- 【 MATLAB 】Fourier Transforms ( fft )
- Qt5.1.1 + VS2010安装错误(Unable to find a Qt build)
- identification for completing the census
- [转]java构造方法的访问修饰符
- CNN-1: LeNet-5 卷积神经网络模型
- linux man命令 0-8,Linux命令Man解释:SUDO(8):以root身份执行指令
- 5-9轻量型网络结构
- 第一模块:开发基础 第1章·Python基础语法
- java去哪导包_在Java语言中,哪一个包中的类是自动导入的?( )java.applet
- Windows 安装Bazel (安装过程中报远程服务器错,先记下来方法)
- python自带的解释器和编辑器叫什么_(四)python自带解释器(LDIE)的使用
- Canny算法解析,opencv源码实现及实例
- qgis导出shp_使用QGIS将文本坐标转换为矢量文件
- 第二届广东大学生网络安全攻防大赛 个人向Write Up
- C语言C++制作游戏外挂,一个简单的内存外挂!
- 费解的开关 (蓝桥杯倒计时12天)
- u盘中毒如何删除system volume information文件
- 11.18-刷题日结
- https安全证书过期的原因
- MMDetection亲测安装教程
热门文章
- 2017.9.23 Count on a tree 思考记录
- 【英语学习】【English L06】U01 Breakfast L4 Drink Morning Tea
- 【英语学习】【WOTD】largesse 释义/词源/示例
- core微型计算机,UPC-CHT01 | 专业创客微型计算机板_UP Core - AAEON
- 关于redis的pipline和lua脚本
- linux中执行历史第五个命令,Linux 快速执行历史命令,用 !编号
- A way to visualize mip levels
- UE3 中文教程主页
- 我们为什么这样选择损失函数
- 文件描述符file descriptor与inode的相关知识