首页 > 其他分享 >uuid的设计与使用

uuid的设计与使用

时间:2023-07-31 21:11:06浏览次数:35  
标签:count uuid 产线 更新 标识 使用 设计 UUID

UUID全称Universal Unique Identifier是一串128位数字码,用于唯一识别网络对象或者事件。

核心思想是结合机器的网卡、当地时间、时间戳,随机数,机器号来生成GUID

 

项目背景:

项目中存在公司基础信息,不同产线的资质信息,合同,银行账号等信息

新增场景,需要有一个sid标识公司,使用pid标识公司下的产线。

仅仅使用自增的主键是不足够的,还要生成一个唯一性标识来区分产线!

 

方法:使用java自带生成uuid生成标识公司和产线的sid和pid

    private String queryUUID() throws SQLException {
//防止并发创建 synchronized (this) { String uuid = UUID.randomUUID().toString(); int count = baseDao.queryWithId(uuid); int switchCount = 0;
//防止出现重复 并且提供5次的重试次数 while (count > 0 || switchCount < 5) { uuid = UUID.randomUUID().toString(); count = baseDao.queryWithId(uuid); switchCount++; } return uuid; } }

新增数据:生成新的uuid

更新数据:当前的uuid是存在的,先删除数据再更新,更新需要同时更新5张表以上!

若写更新语句,那么需要重写5次更新语句,重写较多的更新逻辑,因此采用先删除数据再插入数据!

同时使用注解@Transactional保证事务性,要么全部成功,要么全部失败!

标签:count,uuid,产线,更新,标识,使用,设计,UUID
From: https://www.cnblogs.com/developS/p/17594505.html

相关文章

  • Swagger_介绍和使用方式
         然后在浏览器上访问localhost:8080/doc.html就可以测试接口了......
  • Java面试题 P18:Redis篇:Redis使用场景-缓存-缓存雪崩
          缓存雪崩:是指在同一时段大量的缓存key同时失效或者Redis服务宕机,导致大量的请求到达数据库,带来巨大压力。                            ......
  • 设计一个小数(分数)分频电路?
    请设计一个小数(分数)分频电路?例:设计一个3.6的分频电路。计算原理:N=M.D>1分频  M整数部分 D小数部分使用M分频和M+1分频来构成M.D分频设M分频A次 M+1分频B次可得M*A+(M+1)*B周期内可看作 [M*A+(M+1)*B]/(A+B)=N分频代值可得:N=3.6  M=3  M+1=436/3......
  • F5 LTM 知识点和实验 7-使用SNATs处理流量
    第七章:使用SNATs处理流量SNATs:传统的vs都是对目的地址和端口进行改变,而源地址没有改变,如果你需要对源地址和源端口进行更改,则需要使用SNAT能力,好处在于:1、允许不可路由地址(网络内部)的设备获得可路由地址以进入网络外部。2、确保目标服务器通过BIG-IP系统返回响应,而不是直接发......
  • 平面设计都有哪些软件推荐,试试这几款
    优秀的平面广告设计可以给产品带来良好的效益,正确传播品牌的价值和色调,而功能强大、使用方便的平面广告设计软件是创造优秀平面广告设计的关键。本文推荐7款备受好评的平面广告设计软件,易于使用!1.即时设计即时设计是国内一款专业级的UI设计工具,像PC端的网页,移动端的App、小......
  • 2023-07-31 在uniapp使用canvas绘制一个圆角为50%的图片【代码来自chatGpt,稍作修改】
    <template><view><canvasid="myCanvas":style="{width:'200px',height:'200px'}"></canvas></view></template><script>exportdefault{onReady(){this.......
  • Unity UGUI的Shadow(阴影)组件的介绍及使用
    UnityUGUI的Shadow(阴影)组件的介绍及使用1.什么是Shadow(阴影)组件?Shadow(阴影)组件是UnityUGUI中的一个特效组件,用于在UI元素上添加阴影效果。通过调整阴影的颜色、偏移、模糊等属性,可以使UI元素看起来更加立体和有层次感。2.Shadow(阴影)组件的工作原理Shadow(阴影)组件......
  • URL函数的使用(支持正则表达式)、分组、反向解析、Django2的转换器、路由分发、伪静态的
    url('test',views.test),url函数的第一个参数是支持正则表达式的如果匹配到一个路由,就不在往下匹配,直接执行路由对应的视图函数 http://127.0.0.1:8000/test/是django默认设置的,django会先拿着test去匹配,如果匹配不到,它会自动加一个斜杠再次去匹配 去浏览器器搜索textadd只......
  • C++ | const的使用
    const基础用法用于声明一个不可再被修改的变量:constintnum=17;num=33; //Invalid,会报错用于指针首先,如果将一个指针用const声明为常量指针,那么这个指针的指向将不能被改变。但可以通过这个指针来修改被指向的对象:intdemo=17;int*constp=&demo; //......
  • Mybatis中的Mapper.xml映射文件sql查询接收多个参数 分页查询 sql语句动态生成的时候,
    Mybatis中的Mapper.xml映射文件sql查询接收多个参数分页查询sql语句动态生成的时候,使用${},sql语句中某个参数进行占位的时候用#{}原文链接:https://blog.csdn.net/Ep_Little_prince/article/details/100687848​我们都知道,在Mybatis中的Mapper.xml映射文件可以定制动态SQ......