• 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);
            }




  • 相关阅读:
    iOS开源控件库收集
    Ruby中的几种除法
    Font
    PlaySound
    STL
    APIs
    cin and cout
    CreateWindow
    Introducing Direct2D
    VC 常用代码
  • 原文地址:https://www.cnblogs.com/apescode/p/9111976.html
Copyright © 2020-2023  润新知