wild84 2017-12-07 03:24 采纳率: 80%
浏览 4904
已采纳

spring的controller和service是否线程安全?

先上代码

 public String deleteNews(Integer id){
        String ret;
        logger.debug("mydebug news id:"+id);
        News news=newsService.selectNewsById(id);
        Types types=news.getTypesEnti();
        if (types.getOnechildOnly()==1){
            ret=ReturnFormat.retParam(2,null);
            return ret;
        }else{
            int no=newsService.deleteNewsById(id);
            if (no>0){
                ret= ReturnFormat.retParam(0,null);
            }else{
                ret=ReturnFormat.retParam(1,null);
            }
            return ret;
        }
    }

我先传一个types.getOnechildOnly()==1的news ID,这时是正常的
然后我再传一个types.getOnechildOnly()!=1的ID,这个时候也是正常的,
但是当我再重复1和2步骤时,newsService.selectNewsById(id);有时候会出现
空值情况.我打印了下,好像他删除的还是前一个已经删除的id,这种情况怎么处理?

  • 写回答

2条回答 默认 最新

  • 一页书_ 2017-12-07 03:26
    关注

    线程安不安全取决于你怎么用,反正记住一点,共享资源不要定义全局的变量,只定义常量和注入的bean,这样基本不会有线程安全问题的出现。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 如何用stata画出文献中常见的安慰剂检验图
  • ¥15 c语言链表结构体数据插入
  • ¥40 使用MATLAB解答线性代数问题
  • ¥15 COCOS的问题COCOS的问题
  • ¥15 FPGA-SRIO初始化失败
  • ¥15 MapReduce实现倒排索引失败
  • ¥15 ZABBIX6.0L连接数据库报错,如何解决?(操作系统-centos)
  • ¥15 找一位技术过硬的游戏pj程序员
  • ¥15 matlab生成电测深三层曲线模型代码
  • ¥50 随机森林与房贷信用风险模型