zoukankan      html  css  js  c++  java
  • JAVA Synchronized和Lock实现原理

    一、Synchronized实现
    try {
                if (!MsOnionRegexUtils.checkDigit(idxStr)) {
                    return MsOnionResult.build(MsOnionStatusConstants.STATUS_400, MessageConstants.MESSAGE_PARAMETER_ILLEGAL + ", idxStr=" + idxStr);
                }
                if (!MsOnionRegexUtils.isNumeric(statusStr)) {
                    return MsOnionResult.build(MsOnionStatusConstants.STATUS_400,
                            MessageConstants.MESSAGE_PARAMETER_ILLEGAL + ", statusStr=" + statusStr);
                }
                idx = Long.parseLong(idxStr);
                status = Short.parseShort(statusStr);
    
                // 查询仓库是否关联商品,不能删除
                CollectorItemExample example = new CollectorItemExample();
                CollectorItemExample.Criteria criteria = example.createCriteria();
                criteria.andWarehouseTypeIdxEqualTo(idx);
                List<CollectorItem> list = itemService.queryByExample(msOnionApiVersion, example);
                if (MsOnionCollectionUtils.isNotEmpty(list)) {
                    return MsOnionResult.build(MsOnionStatusConstants.STATUS_400, "仓库已关联商品,不能删除");
                }
                int result = warehouseTypeService.updateStatus(msOnionApiVersion, idx, status);
                if (result > 0) {
                    return MsOnionResult.ok();
                }
                return MsOnionResult.build(MsOnionStatusConstants.STATUS_400, MessageConstants.MESSAGE_SERVER_ERROR);
    
            } catch (MsOnionIllegalArgumentException e) {
                return MsOnionResult.build(MsOnionStatusConstants.STATUS_400, MessageConstants.MESSAGE_PARAMETER_ILLEGAL);
            } catch (MsOnionException e) {
                return MsOnionResult.build(MsOnionStatusConstants.STATUS_500, MessageConstants.MESSAGE_SERVER_ERROR);
            }




  • 相关阅读:
    font-svg
    转 让NET C# 程序独立运行(脱离 .NET Framework运行,绿色运行) 未验证
    自定义纸张 未验证
    CSS 各种形状
    ZIP压缩与解压
    FindWindow SendMessage
    js 简单的滑动4
    js 简单的滑动3
    js 简单的滑动2
    Linux 下的php,nginx,mysql的安装
  • 原文地址:https://www.cnblogs.com/apescode/p/9111976.html
Copyright © 2011-2022 走看看