eas之Uuid和BOSUuid 区别
BOSUuid 加入了BOSType的概念,这个唯一码跟 BOSType有关,里面包含了BOSType的信息。 根据BOSType可以生产BOSUuid,同样,根据BOSUuid也可以找到BOSType.
BOSUuid与ObjectUuidPK :
BOSUuid表示数据库分录的ID,可以理解为数据库行的ID, 本质上,两者是一致的。只是在理解的角度不一样,一个从数据库的角度,一个从java对象的角度。
(1) BOSUuid –> IObjectPK:IObjectPK pk = new ObjectUuidPK(uuid);
(2) IObjectPK –> BOSUuid:BOSUuid.read(pk.toString());
(3) BOSUuid和IObjectPK –> String:uuid.toString()和pk.toString();
(4) String –> BOSUuid和IObjectPK:
BOSUuid.read(id);
IObjectPK pk = new ObjectUuidPK(BOSUuid.read(id));
BOSUuid 与ObjectUuidPK 的区别: BOSUuid表示数据库分录ID,可以理解为数据库行ID, 数据库行对应一个java对象,所以就用ObjectUuidPK表示java对象的ID. 本质上,两者是一致的。只是在理解的角度不一样,一个从数据库的角度,一个从java对象的角度
//EAS通过单据ID获得单据实体BOSTYPE
BOSUuid.getBOSObjectType(billID, true);
new ObjectStringPK(this.editData.getId().toString();//转换成ObjectStringPK
IObjectPK pk=new ObjectUuidPK(id);//转换成IObjectPk类型
String,BOSUuid,IObjectPK之间的相互转换
通过对象直接获取的Id类型为BosUuid类型,根据Id获取对象时,要求参数为主键IObjectPK类型
通常前后台调用接口传参时,使用的是String类型,因此需要集中类型至今相互转换
String id="ssss";
IObjectPK pk=new ObjectStringPK(id);//主键
//通过主键获取对象
XXXXInfo info=XXXXFactory.getRemoteInstance().getXXXInfo(pk);
//id Uuid pk之间相互转换
BOSUuid Uuid=info.getId();
pk=new ObjectUuidPK(Uuid);
info.setId(BosUUid.create(info.getBOSType()));//设置新的id
eas之Uuid和BOSUuid 区别的更多相关文章
- CoreBluetooth
Core Bluetooth的基本常识 每个蓝牙4.0设备都是通过服务(Service)和特征(Characteristic)来展示自己的 一个设备必然包含一个或多个服务,每个服务下面又包含若干个特征 ...
- iOS开发之蓝牙
// // ViewController.m // 13-蓝牙 // // Created by hongqiangli on 2017/7/21. // Copyright © 李洪强. A ...
- IOS 蓝牙(GameKit、Core Bluetooth)
GameKit的蓝牙开发注意 ● 只能用于iOS设备之间的连接 ● 只能用于同一个应用程序之间的连接 ● 最好别利用蓝牙发送比较大的数据 /* 关于蓝牙的数据传输 1. 一次性传送,没有中间方法,所 ...
- Core Bluetooth的基本常识
每个蓝牙4.0设备都是通过服务(Service)和特征(Characteristic)来展示自己的 一个设备必然包含一个或多个服务,每个服务下面又包含若干个特征 特征是与外界交互的最小单位 比如说,一 ...
- 09: mysql基础面试题
1.uuid和id区别 1)uuid类型是varchar(36),而自增长Id则一般是bigInt类型. 2)相对于bigInt类型的自增长Id,varchar(36)类型的uuid消耗的物理空间更为 ...
- 关于UDID和UUID的区别
关于UDID和UUID的区别 一.UDID(Unique Device Identifier) UDID是Unique Device Identifier的缩写,中文意思是设备唯一标识. 在很多需 ...
- Android与IOS的UUID的区别
UUID含义是通用唯一识别码 (Universally Unique Identifier),这 是一个软件建构的标准,也是被开源软件基金会 (Open Software Foundation, OS ...
- Python uuid库中 几个uuid的区别
在用到uuid库的时候,发现uuid有很多个,比较好奇,就查了一下他们的区别 uuid1()——基于时间戳 uuid2()——基于分布式计算环境DCE(Python中没有这个函数) uuid3()—— ...
- 使用UUID和int自增主键的区别
知其然,知其所以然.在看到生成UUID的代码,后带给我的百度结合自己的经验再写下来的区别 一.UUID做主键: 优点: .保证数据在表和库都是独立的,有利于后续的分库 .合并表的时候主键不会重复 .有 ...
随机推荐
- MySQL终端(Terminal)命令基本操作(转)
注意:MySQL数据库命令不区分大小写.但在MAC的终端,如果你想使用tab自动补全命令,那么你就必须使用大写,这样MAC的终端才会帮你补全命令,否则你按N遍tab都不会有响应. 1.数据库(data ...
- JMS解决系统间通信问题
近期在给公司项目做二次重构,将原来庞大的系统拆分成几个小系统.系统与系统之间通过接口调用,系统间通信有非常多方式,如系统间通信接口做成请求controller,只是这样不方便也不安全,经常使用的方式是 ...
- [深入学习C#]输入输出安全性——可变类型形參列表的变化安全性
可变类型形參列表(variant-type-parameter-lists) 可变类型形參列表(variant-type-parameter-lists )仅仅能在接口和托付类型上出现.它与普通的ty ...
- TTS-零基础入门之停止列表中单条语音播报
做了一个语音 循环播报列表信息.当我新删除了一天列表之后,发现它仅仅有在下一轮播报中才会取消.这明显是不合理的. 一開始的代码是这样写的. <span style="font-fami ...
- ASP.NET MVC 认证模块报错:“System.Configuration.Provider.ProviderException: 未启用角色管理器功能“
新建MVC4项目的时候 选 Internet 应用程序的话,出来的示例项目就自带了默认的登录认证等功能.如果选空或者基本,就没有. 如果没有,现在又想加进去,怎么办呢? 抄啊.将示例项目的代码原原本本 ...
- Android EditText得到和失去焦点时,自定义处理内容
当android的Edittext得到/失去焦点时,需要自定义一些处理内容时,需要对EditText对象的Focus进行监听处理. 在Activity中,做以下处理: 1.取得EditText对象. ...
- java.util.concurrent常用类(CountDownLatch,Semaphore,CyclicBarrier,Future)
CyclicBarrier CyclicBarrier是用来一个关卡来阻挡住所有线程,等所有线程全部执行到关卡处时,再统一执行下一步操作.假设一个场景:每个线程代表一个跑步运动员,当运动员都准备好后, ...
- Python 2:str.title()(使字符串每个单词首字母大写)
name = "hello,world! hello,python!" print(name.title()) #单词首字母大写 运行结果将会是:Hello,World!Hello ...
- ACM_魔仙岛探险(深搜)
魔仙岛探险 Time Limit: 2000/1000ms (Java/Others) Problem Description: 小敏通过秘密方法得到一张不完整的魔仙岛航拍地图.魔仙岛由一个主岛和一些 ...
- C#之纯数字判断
public bool isNaN(string temp) { ; i <temp.Length; i++) { byte tempByte = Convert.ToByte(temp[i]) ...