zoukankan      html  css  js  c++  java
  • 与服务端通信的时候遇到的一个小坑

    用java做了大半年的后台,第一次和服务端通信,也算是初次接触到服务端的东西吧,接触到的第一个坑就是将对服务器的请求写入到了后台的一个事物中

    结果是服务端和我的后台同时去修改数据库中同一个表中的数据,导致死锁!后台请求的时候老是请求不到,得不到返回结果,找了好久。。。

    觉得是个不错的教训,值得记录一下,问题代码如下:

    if(mvInfo.getMvStatus() == 4){//强制下架
    Map<String, Object> map = new HashMap<>();
    map.put("mvId", mvInfo.getMvId());
    map.put("userId", mvInfo.getUserId());
    String isLike = template.selectOne("mvInfo.queryMvLike", map);//用户是否喜欢了自己的该mv
    template.delete("mvInfo.deleteRankInfo", mvInfo);//删掉排行榜中该mv的信息
    mvInfo.setIsLike(isLike);
    template.update("mvInfo.updateUserMvInfo2", mvInfo);//维护用户mv信息
    sysMsg.setContent("经用户举报,您上传的MV《" + mvInfo.getMvName() + "》" + MsgContent.MV_XIAJIA);//下架通知内容
    sysMsg.setHeadline(MsgContent.MV_XIAJIA_TITLE);

    template.insert("reportInfo.handleMessage", sysMsg);//系统消息中插入此条下架信息
    sysMsg.sethUrlOrId(mvInfo.getMvId());
    businessReq.post(pushUrl, JsonUtil.objectToJson(sysMsg));//发送通知(该请求导致死锁
    return sysMsg;
    }

     

  • 相关阅读:
    常用连链接命令行存储小工具
    switch case 跳转表
    抖音越狱版本App下载
    AutoLayout + UILabel布局
    ReplayKit2 有线投屏项目-反向Socket实现
    ReplayKit2 有线投屏项目总结
    直播相关-搭建直播流服务器nodejs
    难过!失眠!
    CAShapeLayer
    WebService相关概念介绍
  • 原文地址:https://www.cnblogs.com/canmeng-cn/p/5945589.html
Copyright © 2011-2022 走看看