java 表单转为实体_Java如何实现form表单提交的数据自动对应实体类(源码)

原生Java+JQuery form表单serializeArray提交自动对应java实体,这是一个实际的例子:

html界面:

秒杀一:

秒杀二:

秒杀三:

秒杀四:

开始秒杀

JS脚本,表单序列化 + 异步请求:

//点击提交,发送异步请求

$("#killApple").click(function(content){

//获取表单数据,并序列化

var formData = $("#flop-form").serializeArray();

//将序列化数据转为对象

var formObject = {};

for (var item in formData) {

formObject[formData[item].name] = formData[item].value;

}

formData = JSON.stringify(formObject);

//发送JSON到服务器

$.ajax({

type: "POST",

url: "/kill/killOrder",

contentType: "application/json", //一定要设置这一行,很关键

data : formData,

datatype: "json",

success: function (data) {

alert(JSON.stringify(data));

}

});

});

秒杀下单控制器:

package com.seesun2012.controller;

import javax.servlet.http.HttpServletRequest;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RequestMethod;

import org.springframework.web.bind.annotation.ResponseBody;

import com.seesun2012.dao.entity.KillOrder;

import com.seesun2012.utils.Result;

/**

* 【秒杀下单】控制器

*

* @author seesun2012@163.com

*

*/

@Controller

@RequestMapping("/kill")

public class GameController extends BaseController{

/**

* 衬衫秒杀

*/

@RequestMapping(value = "/killApple", method = RequestMethod.POST, consumes = "application/json")

@ResponseBody

public Result killOrder(HttpServletRequest request, @RequestBody KillOrder ko){

try {

//具体业务实现

return Result.build(200, "秒杀成功");

} catch (Exception e) {

return Result.build(500, e.getMessage());

}

}

}

秒杀实体Bean:

package com.seesun2012.dao.entity;

/**

* 秒杀参数实体

*/

public class KillOrder {

private Integer killA;

private Integer killB;

private Integer killC;

private Integer killD;

//TODO GET、SET方法...

}

秒杀结果返回工具类:

package com.seesun2012.utils;

import java.io.Serializable;

import java.util.HashMap;

/**

* 统一返回结果类

*

* @author seesun2012@163.com

*

*//

public class Result extends HashMap implements Serializable {

private static final long serialVersionUID = 1L;

public static final Result SUCCEED = new Result(0, "操作成功");

public Result(int status, String massage) {

super();

this.put("status", status).put("message", massage);

}

public Result put(String key, Object value) {

super.put(key, value);

return this;

}

public static Result build(int i, String message) {

return new Result(i, message);

}

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值