insert() 该方法接收两个参数,分别是插入的目标路径和插入的数据值。其中,插入的数据由 ValuesBucket 封装,服务端可以从该参数中解析出对应的属性,然后插入到数据库中。此方 法返回一个 int 类型的值用于标识结果。接收到传过来的用户信息并把它保存到数据库中的代 码示例如下
public int insert插入Uri uri, Values值Bucket桶 value) {
// 参数校验
if (ormContext 对象关系映射数据库== null) {
HiLog.error(LABEL标签_LOG, “failed失败的 to insert插入, ormContext is null”);
return -1;
}
// 构造插入数据
User user = new User();
user.setUserId(value.getIntegergetInteger,计算机函数语言,返回具有指定名称的系统属性的整数值。(“userId”));
user.setFirstName(value.getString(“firstName”));
user.setLastName(value.getString(“last第二年去年Name”));
user.setAge(value.getInteger(“age”));
user.setBalance(value.getDouble(“balance”平衡));
// 插入数据库
boolean布尔值 isSuccessful = ormContext.insert(user);
if (!isSuccessful) {
HiLog.error(LABEL_LOG, “failed to insert”);
return -1;
}
isSuccessful = ormContext.flush();
if (!isSuccessful) {
HiLog.error(LABEL_LOG, “failed to insert flush”);
return -1;
}
DataAbilityHelper.creator创造(this, uri).notify通知Change改变(uri);
int id = Math.toIntExact(user.getRowId());
#java.lang.Math.toInt图案Exact()确切的是java中的内置数学函数,该函数返回long参数的值。如果结果溢出int则抛出异常。由于toIntExact(long value)是静态的,因此不需要创建对象
return id;
}