从前端JS传参数到后端java的写法问题

qq_26957525 2016-11-04 08:41:17
后端写了个方法,从前端获取一个id到数据库更新个内容,但是后端的数据写法似乎写错了,因为不会写js,来个大神讲讲
这是方法函数:
public boolean archiveOrder(int id){
System.out.println("-------------" + id);
if (0 != id){
String sql = String.join("\n",
" UPDATE tr_requestorder tli",
" SET tli.STATE = 'archive'",
" WHERE tli.ID = @id",
" AND tli.STATE = 'mibileDesign'");
Map<String, Object> params = new HashMap<String, Object>();
params.put("id", id);
Sql daoSQL = Sqls.create(sql);
daoSQL.params().putAll(params);
dao().execute(daoSQL);

return true;
}
return false;
}


这个是接口函数
public boolean archiveOrder(@Param("id") int id) {
return orderService.archiveOrder(id);
}


这个是js里传递的参数
      function archive(data) {
if(data.stateCN!="移动设计院填报"){
alert("该项此状态下不能进行归档操作");
return
}else {
console.log(data.id);
$.ajax({
url:_PageContext.url + '/order/archive',
type:"post",
data:{id:data.id},
dataType:"json",
success:function (data) {
if(data){
alert("归档成功!")
}else {
alert("归档失败!")
}
},
error:function () {
alert("操作错误!")
}
})
}
}
...全文
373 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
所有view过来的参数都是String类型的吧,如果非要转换就强转一下, Integer.parseInt()
Tinker77 2016-11-05
  • 打赏
  • 举报
回复
{'dateType':dateType,'prodTypeId':prodTypeId,'prodIds[]':prodIds}; data:{id:data.id},---->data:{'id':data.id} request 取出来,自己转下id即可,你ajax请求参数格式错误。
qq_26957525 2016-11-04
  • 打赏
  • 举报
回复
大致就是想问一下是不是我的参数传递的时候写错了 因为我在后端控制台看到的问题reason: 'Unexpect String = id=720' 是因为json格式的参数只能以String类型解析吗 如果要传递int参数要怎样写呢

81,095

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧