ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

做update业务时,name名唯一性校验,问题及解决

2019-12-27 14:00:41  阅读:245  来源: 互联网

标签:authcByResource name 重复 校验 update bean authc id


1. 在做update业务时,在更新name时,需要检查与存在的是否有重名的现象。碰到的问题是,如果简单的判断bean是否一致,会导致自己没有改名也报重复,如果根据size大小,有时又不准确。解决如下:

2.在入参封装的时候,会传入一个实体bean。这个bean,取得他的name后,然后查找获取一个bean类的集合,在这个list中,遍历他的每一个bean,的每一个id,如果存在不一样的id,就说明已经重名

3.如下,在这个例子中,authc是更新的bean。本例亲测试通过。

@RequestMapping("/authcUpdate/{id}")
    public Map authcUpdate(@Valid Authc authc,BindingResult error) {
        Map<String ,Object > map = new HashMap<String,Object> ();

        List<Authc> authcByResource = authcService.getAuthcByResource(authc);

        if(authcByResource.size()>0) {
            for (Authc authc2 : authcByResource) {
                //判断有没有重复id,如果有,则为本条修改的数据,如果是一条新的,说明还存在其他重复数据。
                if(authc2.getId()!=authc.getId()) {
    
                    error.addError(new FieldError("authc", "resource", "资源名重复"));
                }
            }
        }

 

标签:authcByResource,name,重复,校验,update,bean,authc,id
来源: https://www.cnblogs.com/sdgtxuyong/p/12106936.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有