spring MVC 接受表单参数常用的五种方法
来源:互联网 发布:澳洲硕士知乎 编辑:程序博客网 时间:2024/05/18 15:25
本人博客已移至: www.andyqian.com 此处不再更新.........
在spring MVC中接收表单参数非常方便,与struts2 不同的是,spring MVC接受参数可以直接将接受的参数作为
方法的参数,如下所代码所示:
--controller 代码
/**
* (第一种方法接收参数)
* 保存用户信息
* @param user
* @return
*/
@RequestMapping(value="/saveUser",method=RequestMethod.POST)
public ModelAndView saveUser(UserModel user) {
StringBuilder sb = new StringBuilder();
sb.append("用户名:"+user.getUsername());
sb.append("邮箱:"+user.getEmail());
sb.append("年龄:"+user.getAge());
String content = sb.toString();
return new ModelAndView("/wecome","result",content);
}
/**
* 第二种方法接收表单参数
* @param request
* @return
*/
@RequestMapping(value="twoSaveUser",method=RequestMethod.POST)
public ModelAndView twoSaveUser(HttpServletRequest request){
StringBuilder builder = new StringBuilder("通过servlet获取到的参数/n");
String username = request.getParameter("username");
String age = request.getParameter("age");
String email = request.getParameter("email");
builder.append("用户名: "+username+"\n");
builder.append("年龄: "+age+"\n");
builder.append("邮箱: "+email+"\n");
String content = builder.toString();
return new ModelAndView("/wecome","result",content);
}
/**
* 第三种方法保存用户信息
* @param username 待保存的用户名
* @param email email
* @param age 年龄
* @return
*/
@RequestMapping(value="threeSaveUser",method=RequestMethod.POST)
public ModelAndView threeSaveUser(String username,String email,int age){
StringBuilder sb = new StringBuilder();
sb.append("用户名:--->"+username);
sb.append("邮箱:----->"+email);
sb.append("年龄------>"+age);
String content = sb.toString();
return new ModelAndView("/wecome","result",content);
}
/**
* 第四种保存用户的方法
* @param user
* @return
*/
@RequestMapping(value="fourSaveUser",method=RequestMethod.POST)
public ModelAndView fourSaveUser(HttpServletRequest request,UserModel user){
StringBuilder sb = new StringBuilder("第四种方法\n");
sb.append("用户名:---->"+user.getUsername()+"\n");
sb.append("邮箱:---->"+user.getEmail()+"\n");
sb.append("年龄:---->"+user.getAge()+"\n");
String content = sb.toString();
String localhost = request.getRemoteAddr();
System.out.println("localhost-->"+localhost);
return new ModelAndView("/wecome","result",content);
}
/**
* 第五种 保存用户信息的方法
*/
@RequestMapping(value="fiveSaveUser",method=RequestMethod.POST)
public ModelAndView fourSaveUser(HttpServletRequest request,HttpServletResponse respose,UserModel user){
StringBuilder sb = new StringBuilder("第五种方法\n");
sb.append("用户名:---->"+user.getUsername()+"\n");
sb.append("邮箱:---->"+user.getEmail()+"\n");
sb.append("年龄:---->"+user.getAge()+"\n");
String content = sb.toString();
String localhost = request.getRemoteAddr();
System.out.println("localhost-->"+localhost);
return new ModelAndView("/wecome","result",content);
}
--注意事项:
在接收表单参数时的可以根据需要在参数中添加,HttpServletRequest,HttpServletResponse 参数,获取获取请求参数,也可以在参数中添加 model 实体对象, 个人建议使用 一般情况下使用第一种方法,特殊情况可根据自己的需求来定制参数个数以及需要的参数
--表单提交jsp页面
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
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>表单提交测试页面</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
</head>
<body>
<form action="http://localhost/IntentWash/user/saveUser" method="post">
用户名:<input type="text" name="username"><br/>
邮箱:<input type="text" name="email"/><br/>
年龄: <input type="text" name="age"/><br/>
<input type="submit" value="提交">
</form>
<hr/>
<form action="http://localhost/IntentWash/user/twoSaveUser" method="post">
用户名:<input type="text" name="username"><br/>
邮箱:<input type="text" name="email"/><br/>
年龄: <input type="text" name="age"/><br/>
<input type="submit" value="提交">
</form>
<hr/>
<form action="http://localhost/IntentWash/user/threeSaveUser" method="post">
用户名:<input type="text" name="username"><br/>
邮箱:<input type="text" name="email"/><br/>
年龄: <input type="text" name="age"/><br/>
<input type="submit" value="提交">
</form>
</body>
</html>
注意事项:
个人建议使用第一种方法: 使用pojo传递 (也就是bean) 这种的方法的可扩展性高,可维护性强,
也可以根据不同的应用场景来决定方法中的参数,以满足业务需要!
1 0
- spring MVC 接受表单参数常用的五种方法
- Spring MVC(五)封装表单参数的控制器(FormController)
- Spring-MVC接受参数
- Spring mvc 接受请求参数的方式
- 常用Spring MVC获取请求参数的几种方法
- Spring MVC-注解接受参数
- 使用HandlerMethodArgumentResolver接口自定义Spring MVC的参数接受规则
- struts2的接受form表单参数的方法
- Spring MVC--16.参数接受map
- Spring MVC--16.参数接受map
- springMVC 接收表单参数的五种方法
- @RequestBody Spring MVC接受对象数组,并接受其它参数
- MyBatis接受参数的两种方法
- MFC接受参数的三种方法
- spring mvc中controller怎么接受页面表单提交的数据
- Struts2接受请求参数三种常用方法
- Spring MVC的表单
- Spring MVC 的请求参数获取的几种方法
- Cocoa使用自定义对话框的方法
- LeetCode Count Complete Tree Nodes
- ViewPager+RadioButton轻松实现底部Tab导航
- 线程池——JAVA并发编程指南
- LightOJ 1275 Internet Service Providers
- spring MVC 接受表单参数常用的五种方法
- 检查gcc编译器是否C++ 11特性
- linux下crontab命令使用
- 单体模式(读书笔记)
- POJ 3009 Curling 2.0 {深度优先搜索}
- [88][E][leetcode 题解]Length of Last Word
- ANT命令整理
- shell编程Linux中批量创建用户
- 网络层—VPN