作者:CN.programmer.Luxh 和java相关

 一个普通的表单。

  表单的代码如下:

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  7. <title>Add User</title>
  8.  
  9. <script type="text/javascript">
  10. //添加用户
  11. function addUser() {
  12. var form = document.forms[0];
  13. form.action = "${pageContext.request.contextPath}/user/addUser1";
  14. //form.action = "${pageContext.request.contextPath}/user/addUser2";
  15. //form.action = "${pageContext.request.contextPath}/user/addUser3";
  16. form.method = "post";
  17. form.submit();
  18. }
  19. </script>
  20.  
  21. </head>
  22. <body>
  23. <form>
  24. <table>
  25. <tr>
  26. <td>账号</td>
  27. <td>
  28. <input type="text" name="userName">
  29. </td>
  30. </tr>
  31. <tr>
  32. <td>密码</td>
  33. <td>
  34. <input type="password" name="password">
  35. </td>
  36. </tr>
  37. <tr>
  38. <td>&nbsp;</td>
  39. <td>
  40. <input type="button" value="提交" onclick="addUser()">
  41. </td>
  42. </tr>
  43. </table>
  44. </form>
  45. </body>
  46. </html>

  1、直接把表单的参数写在Controller相应的方法的形参中

  1. @RequestMapping("/addUser1")
  2. public String addUser1(String userName,String password) {
  3. System.out.println("userName is:"+userName);
  4. System.out.println("password is:"+password);
  5. return "/user/success";
  6. }

  2、通过HttpServletRequest接收

  1. @RequestMapping("/addUser2")
  2. public String addUser2(HttpServletRequest request) {
  3. String userName = request.getParameter("userName");
  4. String password = request.getParameter("password");
  5. System.out.println("userName is:"+userName);
  6. System.out.println("password is:"+password);
  7. return "/user/success";
  8. }

  3、通过一个bean来接收

    1)建立一个和表单中参数对应的bean

  1. public class User {
  2.  
  3. private String userName;
  4.  
  5. private String password;
  6.  
  7. public String getUserName() {
  8. return userName;
  9. }
  10.  
  11. public void setUserName(String userName) {
  12. this.userName = userName;
  13. }
  14.  
  15. public String getPassword() {
  16. return password;
  17. }
  18.  
  19. public void setPassword(String password) {
  20. this.password = password;
  21. }
  22. }

    2)用这个bean来封装接收的参数

  1. @RequestMapping("/addUser3")
  2. public String addUser3(User user) {
  3. System.out.println("userName is:"+user.getUserName());
  4. System.out.println("password is:"+user.getPassword());
  5. return "/user/success";
  6. }

  4、通过json数据接收

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  7. <title>Add User</title>
  8.  
  9. <script type="text/javascript" src="${pageContext.request.contextPath}/resource/script/jquery-1.9.1.min.js"></script>
  10. <script type="text/javascript">
  11. $(document).ready(function(){
  12. $("#button_submit").click(function(){
  13. var name = $("#userName").val();
  14. var pass = $("#password").val();

  15. var user = {userName:name,password:pass};//拼装成json格式
  16.  
  17. $.ajax({
  18. type:"POST",
  19. url:"${pageContext.request.contextPath}/user/addUser4",
  20. data:user,
  21. success:function(data){
  22. alert("成功");
  23. },
  24. error:function(e) {
  25. alert("出错:"+e);
  26. }
  27. });
  28. });
  29. });
  30. </script>
  31.  
  32. </head>
  33. <body>
  34. <form>
  35. <table>
  36. <tr>
  37. <td>账号</td>
  38. <td>
  39. <input type="text" id="userName" name="userName">
  40. </td>
  41. </tr>
  42. <tr>
  43. <td>密码</td>
  44. <td>
  45. <input type="password" id="password" name="password">
  46. </td>
  47. </tr>
  48. <tr>
  49. <td>&nbsp;</td>
  50. <td>
  51. <input type="button" id="button_submit" value="提交">
  52. </td>
  53. </tr>
  54. </table>
  55. </form>
  56. </body>
  57. </html>

  依然可以使用bean来接收json数据

  1. @RequestMapping("/addUser4")
  2. public String addUser4(User user) {
  3. System.out.println("userName is:"+user.getUserName());
  4. System.out.println("password is:"+user.getPassword());
  5. return "/user/success";
  6. }

  5、使用jQuery的serializeArray() 方法序列化表单元素

    如果表单元素很多,手工拼装成json数据非常麻烦,可以使用jQuery提供的serializeArray()方法序列化表单元素,返回json数据结构数据。  

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  7. <title>Add User</title>
  8.  
  9. <script type="text/javascript" src="${pageContext.request.contextPath}/resource/script/jquery-1.9.1.min.js"></script>
  10. <script type="text/javascript">
  11. $(document).ready(function(){
  12. $("#button_submit").click(function(){
  13.  
  14. //序列化表单元素,返回json数据
  15. var params = $("#userForm").serializeArray();
  16.  
  17. //也可以把表单之外的元素按照name value的格式存进来
  18. //params.push({name:"hello",value:"man"});
  19.  
  20. $.ajax({
  21. type:"POST",
  22. url:"${pageContext.request.contextPath}/user/addUser5",
  23. data:params,
  24. success:function(data){
  25. alert("成功");
  26. },
  27. error:function(e) {
  28. alert("出错:"+e);
  29. }
  30. });
  31. });
  32. });
  33. </script>
  34.  
  35. </head>
  36. <body>
  37. <form id="userForm">
  38. <table>
  39. <tr>
  40. <td>账号</td>
  41. <td>
  42. <input type="text" id="userName" name="userName">
  43. </td>
  44. </tr>
  45. <tr>
  46. <td>密码</td>
  47. <td>
  48. <input type="password" id="password" name="password">
  49. </td>
  50. </tr>
  51. <tr>
  52. <td>&nbsp;</td>
  53. <td>
  54. <input type="button" id="button_submit" value="提交">
  55. </td>
  56. </tr>
  57. </table>
  58. </form>
  59. </body>
  60. </html>

  依然可以使用bean来接收json数据:

  1. @RequestMapping("/addUser5")
  2. public String addUser5(User user) {
  3. System.out.println("userName is:"+user.getUserName());
  4. System.out.println("password is:"+user.getPassword());
  5. return "/user/success";
  6. }

SpringMVC接收页面表单参数(转)的更多相关文章

  1. SpringMVC接收页面表单参数-java-电脑编程网

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  2. SpringMVC接收页面表单参数

    一个普通的表单. 表单的代码如下: <%@ page language="java" contentType="text/html; charset=UTF-8&q ...

  3. SpringMVC获取页面表单参数的几种方式

      以下几种方式只有在已搭好的SpringMVC环境中,才能执行成功!      首先,写一个登陆页面和一个Bean类 <%@ page language="java" co ...

  4. spring mvc 接收页面表单List

    很少写博客,如果写的不好请多多包涵! 最近在用Spring mvc时遇到一个问题,在网上搜了很多资料.几乎没看到解决办法! 例如:当我们在做批量添加或者更新时,在Controller层接收表单数据的问 ...

  5. 把JSON数据载入到页面表单的两种思路(对easyui自带方法进行改进)

    #把JSON数据载入到页面表单的两种思路(对easyui自带方法进行改进) ##背景 项目中经常需要把JSON数据填充到页面表单,一开始我使用easyui自带的form load方法,觉得效率很低,经 ...

  6. html 页面表单如果是disabled,则不能提交到服务器端,request.getParameter得到的将为null

    html 页面表单如果是disabled,则不能提交到服务器端,request.getParameter得到的将为null 解决方法:使用hidden 利用javascript赋值,传递到后台

  7. 记录ASP.NET页面表单初始状态(主要是为了前台可以根据这个判断页面是否变动了)

    把页面表单状态记录到HiddenField中. 这里只提供后台代码, 前台逻辑根据需求自由定义. 存放值的ViewState: protected Dictionary<string, stri ...

  8. 使用JQuery.Validate插件来校验页面表单有效性

    使用JQuery.Validate插件来校验页面表单有效性​1. [代码] 常见的注册表单元素 <form action="#" method="post" ...

  9. JavaScript学习——使用JS完成注册页面表单校验

    1.步骤分析 第一步:确定事件(onsubmit)并为其绑定一个函数 第二步:书写这个函数(获取用户输入的数据<获取数据时需要在指定位置定义一个 id>) 第三步:对用户输入的数据进行判断 ...

随机推荐

  1. eval 如何定义函数

    eval(compile('''def fun(): print 'bbb' ''', '<string>', 'exec')) fun()

  2. SQL效率低下原因主要有

    类别 子类 表达式或描述 原因 索引 未建索引   产生全表扫描   未利用索引 substring(card_no,1,4)=′5378′ 产生全表扫描     amount/30< 1000 ...

  3. SNA社交网络算法

    社交网络需要用到igraph库,所以需要安装.可以在lfd的网站 http://www.lfd.uci.edu/~gohlke/pythonlibs/ 上下载python_igraph,具体的pyth ...

  4. cocos2d-x Tests讲解 Particle System(粒子系统)

    转载请注明出处: http://www.cnblogs.com/shangdahao/archive/2012/04/14/2447571.html 一.粒子系统简介: 粒子系统最早出现在80年代,主 ...

  5. 【MS Office2013小技巧】Word中公式中的等号对齐

    步骤: 1. 先将所需要对齐的公式分不同行打出来: 2. 选中所有公式,右键点击并选择“对齐点(A) =”,如图 此时,如果能够正常对齐,则无需进行下面的步骤,但如果出现下图情况并未正常对齐的,再进行 ...

  6. C++默认参数值函数

    1.默认参数值的函数 C++语言允许在定义函数时给其中或某些形式参数(形参)指定默认值,方法就是在相应的形参后面写上“=默认值”,如果省略了对应位置上的实参的值,则在执行被调函数时以该形参的默认值进行 ...

  7. Ecmall系统自带的分页功能

    在Ecmall的二次开发中,分页是必不可少的.这个系统已经自带了分页功能,下面来看看如何使用这个分页. 下面是一个自定义的类,用于查看订单的详细情况.关键在于get_order_data()这个方法, ...

  8. 网页增重不可控?试试 OneAPM Cloud Test

    再次发生了!HTTP Archive 报告在收集了 50 万个最受欢迎的网站的技术信息,经过整理分析后指出:2015 年,网页的平均「体重」增加了 16%,达到了 2,262 KB,近似于 2014 ...

  9. Android 使用XmlSerializer生成xml文件

    在Android开发中,我们时常要用到xml文件. xml作为一种数据载体,在数据传输中发挥着重要的作用,而且它可读性比较强. 下面给出在Android开发中使用XmlSerializer类生成一个简 ...

  10. [cocos2d]cocos2d 2.1与ios 6.0

    最近把xcode升级到4.5了,ios也编程6.0 mark一下需要修改的地方(针对于cocos2d 2.1版本),虽然都是warning,但是对于强迫症患者来说无法忍受啊~ 修改一 libs-Coc ...