-
-
字段概要
字段
protected long
protected long
protected boolean
protected boolean
protected boolean
protected boolean
protected long
protected boolean
boolean
protected boolean
protected boolean
-
-
方法概要
在key列基础上 +value, 如果原来没有key列则默认0并put到target
如果target与key一致则覆盖原值
boolean
boolean
boolean
是否包含key(不要求完全匹配, 根据KEY_CASE有可能不区分大小写)
boolean
除法,涉及到小数位与舍入问题可以提供scale, mode参数
<T> T
boolean
/**
抽取指定列, 生成新的DataRow, 新的DataRow只包括指定列的值, 不包含其他附加信息(如来源表)
返回第一个存在的key对应的value, key不要求完全匹配根据KEY_CASE有可能不区分大小写
如果需要取第一个不为null的值调用nvl(String ... keys)
第一个不为空的值调用evl(String ... keys)
byte[]
byte[]
long
long
getJson(com.fasterxml.jackson.annotation.JsonInclude.Include include)
long
读取主键
主键为空时且容器有主键时, 读取容器主键, 否则返回默认主键
返回第1个存在的key对应的值, 有可能返回null或""
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
验证是否过期
根据当前时间与创建时间对比
过期返回 true
boolean
boolean
boolean
boolean
是否是新数据
强制isNew=true时返回true
全部主键都有值时返回false只要有一个主键值为空返回true
boolean
boolean
boolean
boolean
boolean
boolean
数字解析,解析成BigDecimal 推荐调用parse.number()
解析 key1, value1, key2, value2, key3:value3组合
parseJson(com.fasterxml.jackson.databind.JsonNode json)
protected void
void
按keys顺序递归取值, 如果其中一层是数组 取第0个,不支持多维数组
strict=false时, 如果遇到基础类型值(包含String)则直接返回当前值,忽略之后的key
strict=true时,必须提取到最后一层,如果失败则返回null
如提取用户的部门的领导的年率, 中间遇到部门只是个String类型, 则直接返回部门String
删除指定的key
不和remove命名 避免调用remoate("ID","CODE")时与HashMap.remove(Object key, Object value) 冲突
设置数据源
当前对象处于容器中时, 设置容器数据源
void
void
void
void
toJson(com.fasterxml.jackson.annotation.JsonInclude.Include include)
toJSON(com.fasterxml.jackson.annotation.JsonInclude.Include include)
{id:1, code:a, value:100}
toSet("k","v")转换成
[{k:id, v:1}, {k:code, v:a}, [k:value, v:100]]
toXML(boolean border,
boolean order)
clear, containsValue, entrySet, forEach, get, getOrDefault, keySet, newLinkedHashMap, putFirst, putLast, removeEldestEntry, replaceAll, reversed, sequencedEntrySet, sequencedKeySet, sequencedValues, values
从类继承的方法 java.util.HashMap
compute, computeIfAbsent, computeIfPresent, containsKey, isEmpty, merge, newHashMap, putIfAbsent, remove, replace, replace, size
从接口继承的方法 java.util.Map
compute, computeIfAbsent, computeIfPresent, containsKey, equals, hashCode, isEmpty, merge, putIfAbsent, remove, replace, replace, size
-
字段详细资料
-
KEY_CHILDREN
public static String KEY_CHILDREN
-
KEY_ALL_CHILDREN
public static String KEY_ALL_CHILDREN
-
KEY_ITEMS
public static String KEY_ITEMS
-
-
DEFAULT_PRIMARY_KEY
public static String DEFAULT_PRIMARY_KEY
-
-
updateNullColumn
protected boolean updateNullColumn
-
updateEmptyColumn
protected boolean updateEmptyColumn
-
insertNullColumn
protected boolean insertNullColumn
-
insertEmptyColumn
protected boolean insertEmptyColumn
-
replaceEmptyNull
protected boolean replaceEmptyNull
-
-
-
container
protected transient DataSet container
-
-
-
-
-
-
-
-
-
-
-
-
-
-
createTime
protected long createTime
-
nanoTime
protected long nanoTime
-
expires
protected long expires
-
-
isFromCache
protected boolean isFromCache
-
-
isUpperKey
protected boolean isUpperKey
-
-
-
-
-
-
-
-
方法详细资料
-
-
-
-
-
getNanoTime
public long getNanoTime()
-
setNanoTime
public void setNanoTime(long nanoTime)
-
parseList
数组解析成DataRow
- 参数:
row - 在此基础上执行, 如果不提供则新创建
list - 数组
fields - 下标对应的属性(字段/key)名称, 如果不输入则以下标作为DataRow的key, 如果属性数量超出list长度, 取null值存入DataRow
- 返回:
- DataRow
-
-
-
parse
解析实体类对象
- 参数:
row - 在此基础上执行, 如果不提供则新创建
obj - obj
keys - 列名:obj属性名 "ID:memberId"
- 返回:
- DataRow
-
-
-
-
-
-
-
-
-
parseJson
解析json结构字符
- 参数:
row - 在此基础上执行, 如果不提供则新创建
keyCase - key大小写
json - json
- 返回:
- DataRow
-
-
-
-
parseJson
解析JSONObject
- 参数:
row - 在此基础上执行, 如果不提供则新创建
keyCase - keyCase
json - json
- 返回:
- DataRow
-
-
parseJson
public static DataRow parseJson(DataRow row,
com.fasterxml.jackson.databind.JsonNode json)
-
parseJson
public static DataRow parseJson(com.fasterxml.jackson.databind.JsonNode json)
-
-
-
parseXml
解析xml结构字符
- 参数:
row - 在此基础上执行, 如果不提供则新创建
keyCase - KEY_CASE
xml - xml
- 返回:
- DataRow
-
-
-
parseXml
解析xml
- 参数:
row - 在此基础上执行, 如果不提供则新创建
keyCase - KEY_CASE
element - element
- 返回:
- DataRow
-
-
parseArray
解析 key1, value1, key2, value2, key3:value3组合
- 参数:
row - 在此基础上执行, 如果不提供则新创建
kvs - kvs
- 返回:
- DataRow
-
-
-
-
-
-
-
-
setOverride
public void setOverride(Boolean override)
-
-
-
-
-
-
-
-
-
-
-
getCreateTime
public long getCreateTime()
创建时间
- 返回:
- long
-
setCreateTime
public DataRow setCreateTime(long createTime)
-
getExpires
public long getExpires()
过期时间
- 返回:
- long
-
setExpires
public DataRow setExpires(long millisecond)
设置过期时间
- 参数:
millisecond - millisecond
- 返回:
- DataRow
-
setExpires
public DataRow setExpires(int millisecond)
-
merge
合并数据
- 参数:
row - row
over - key相同时是否覆盖原数据
- 返回:
- DataRow
-
-
-
-
-
-
isNew
是否是新数据
强制isNew=true时返回true
全部主键都有值时返回false只要有一个主键值为空返回true
- 返回:
- Boolean
-
isFromCache
public boolean isFromCache()
是否来自缓存
- 返回:
- boolean
-
setIsFromCache
public DataRow setIsFromCache(boolean bol)
设置是否来自缓存
- 参数:
bol - bol
- 返回:
- DataRow
-
-
-
-
-
-
-
getItems
默认子集
- 返回:
- DataSet
-
-
toLowerKey
key转换成小写
- 参数:
recursion - 是否递归
keys - keys
- 返回:
- DataRow
-
-
toUpperKey
key转换成大写
- 参数:
keys - keys
- 返回:
- DataRow
-
toLowerValue
value转换成小写
- 参数:
keys - keys
- 返回:
- DataRow
-
toUpperValue
value转换成大写
- 参数:
keys - keys
- 返回:
- DataRow
-
isNull
public boolean isNull(String key)
指定列是否为空
- 参数:
key - key
- 返回:
- boolean
-
isNotNull
public boolean isNotNull(String key)
-
isEmpty
public boolean isEmpty(boolean recursion,
String key)
-
isEmpty
public boolean isEmpty(String key)
-
isNotEmpty
public boolean isNotEmpty(String key)
-
addPrimaryKey
public DataRow addPrimaryKey(boolean applyContainer,
String... pks)
添加主键
- 参数:
applyContainer - 是否应用到上级容器 默认false
pks - pks
- 返回:
- DataRow
-
-
-
setPrimaryKey
public DataRow setPrimaryKey(boolean applyContainer,
String... pks)
-
-
setPrimaryKey
设置主键
- 参数:
applyContainer - 是否应用到上级容器
pks - keys
- 返回:
- DataRow
-
-
getPrimaryColumn
public Column getPrimaryColumn()
-
-
getPrimaryKeys
读取主键
主键为空时且容器有主键时, 读取容器主键, 否则返回默认主键
- 返回:
- List
-
-
getPrimaryValues
主键值
- 返回:
- List
-
getPrimaryValue
public Object getPrimaryValue()
-
-
hasPrimaryKeys
public boolean hasPrimaryKeys()
是否有主键
- 返回:
- boolean
-
hasSelfPrimaryKeys
public boolean hasSelfPrimaryKeys()
自身是否有主键
- 返回:
- boolean
-
-
-
-
-
-
-
-
-
setDest
设置数据源
当前对象处于容器中时, 设置容器数据源
- 参数:
dest - dest
- 返回:
- DataRow
-
getChildren
子类
- 返回:
- Object
-
-
getAllChild
所有上级数据(递归)
- 返回:
- List
-
entity
转换成对象
- 类型参数:
T - T
- 参数:
clazz - clazz
configs - 属性对应关系 name:USER_NAME
- 返回:
- T
-
has
public boolean has(String key)
是否有指定的key
- 参数:
key - key
- 返回:
- boolean
-
hasValue
public boolean hasValue(String key)
-
hasKey
public boolean hasKey(String key)
-
containsKey
public boolean containsKey(String key)
-
-
-
-
-
-
put
- 参数:
checkUpdate - 检测是否需要更新
keyCase - keyCase
key - key
value - value
pk - 是否是主键 pk 是否是主键
override - 是否覆盖之前的主键(追加到primaryKeys) 默认覆盖(单一主键)
- 返回:
- DataRow
-
-
-
-
-
-
-
-
-
-
-
putIfEmpty
原来的值为空时执行
- 参数:
key - key
value - value
- 返回:
- this
-
putIfNull
原来的值为null时执行
- 参数:
key - key
value - value
- 返回:
- this
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
getStringWithoutEmpty
返回第1个非空值
- 参数:
keys - keys
- 返回:
- String
-
getStringWithoutNull
返回第1个非NULL值
- 参数:
keys - keys
- 返回:
- String
-
getString
返回第1个存在的key对应的值, 有可能返回null或""
- 参数:
keys - keys
- 返回:
- String
-
-
getString
public String getString(int index)
-
-
getInt
boolean类型true 解析成 1
- 参数:
keys - key
- 返回:
- int
- 抛出:
Exception - 异常 Exception
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
getLong
public Long getLong(int index,
Long def)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
getDecimal
public String getDecimal(int index,
double def,
String format)
-
-
-
getDate
public Date getDate(int index,
Date def)
-
-
-
-
-
-
-
getBytes
public byte[] getBytes(int index)
-
getBytes
public byte[] getBytes(String key)
-
ellipsis
超长部分忽略
- 参数:
length - 最长显示长度
columns - 检测列
- 返回:
- this
-
toSet
{id:1, code:a, value:100}
toSet("k","v")转换成
[{k:id, v:1}, {k:code, v:a}, [k:value, v:100]]
- 参数:
key - 原map中的key存放位置
value - 原map中的value存放位置
- 返回:
- DataSet
-
-
-
-
toJSON
public String toJSON(com.fasterxml.jackson.annotation.JsonInclude.Include include)
-
toJson
public String toJson(com.fasterxml.jackson.annotation.JsonInclude.Include include)
-
getJson
public String getJson(com.fasterxml.jackson.annotation.JsonInclude.Include include)
-
-
-
-
-
toXML
轮换成xml格式
- 返回:
- String
-
toXML
public String toXML(boolean border,
boolean order)
-
hasContainer
public boolean hasContainer()
是否处于容器内
- 返回:
- boolean
-
getContainer
包含当前对象的容器
- 返回:
- DataSet
-
-
-
getCatalogName
public String getCatalogName()
-
-
-
-
-
-
-
-
getTable
public Table getTable(boolean checkContainer)
-
-
-
-
-
-
-
-
-
-
isExpire
public boolean isExpire(int millisecond)
验证是否过期
根据当前时间与创建时间对比
过期返回 true
- 参数:
millisecond - 过期时间(毫秒) millisecond
- 返回:
- boolean
-
isExpire
public boolean isExpire(long millisecond)
是否过期
- 参数:
millisecond - millisecond
- 返回:
- boolean
-
isExpire
public boolean isExpire()
-
-
-
-
-
-
-
-
removes
删除指定的key
不和remove命名 避免调用remoate("ID","CODE")时与HashMap.remove(Object key, Object value) 冲突
- 参数:
keys - keys
- 返回:
- DataRow
-
-
-
clearUpdateColumns
public DataRow clearUpdateColumns()
清空需要更新的列
- 返回:
- DataRow
-
clearIgnoreUpdateColumns
public DataRow clearIgnoreUpdateColumns()
-
-
addUpdateColumns
添加需要更新的列
- 参数:
cols - cols
- 返回:
- DataRow
-
-
addAllUpdateColumns
public DataRow addAllUpdateColumns()
-
copy
将数据从data中复制到this
- 参数:
regex - 是否开启正则匹配
data - data
fixs - fixs
keys - this与data中的key不同时 "this.key:data.key"(CD:ORDER_CD)
- 返回:
- DataRow
-
-
-
-
-
-
-
-
-
-
copyString
复制String类型数据
- 参数:
data - data
keys - keys
- 返回:
- DataRow
-
numberKeys
所有数字列
- 返回:
- List
-
checkRequired
public boolean checkRequired(String... keys)
检测必选项
- 参数:
keys - keys
- 返回:
- boolean
-
-
camel_
驼峰转下划线
- 返回:
- DataRow
-
-
camel
public DataRow camel(boolean lower)
下划线转小驼峰
- 参数:
lower - 是否先转换成小写 遇到全大写但没有下划线的情况 false:不处理 true:全部转成小写
- 返回:
- DataSet
-
Camel
下划线转大驼峰
- 返回:
- DataSet
-
getKeyCase
key大小写转换
- 参数:
keyCase - keyCase
key - key
- 返回:
- String
-
-
putKeyCase
key大小写转换
- 参数:
keyCase - keyCase
key - key
- 返回:
- String
-
-
isUpdateNullColumn
public boolean isUpdateNullColumn()
是否更新null列
- 返回:
- boolean
-
setUpdateNullColumn
public DataRow setUpdateNullColumn(boolean updateNullColumn)
设置是否更新null列
- 参数:
updateNullColumn - updateNullColumn
- 返回:
- DataRow
-
isUpdateEmptyColumn
public boolean isUpdateEmptyColumn()
是否更新空列
- 返回:
- boolean
-
setUpdateEmptyColumn
public DataRow setUpdateEmptyColumn(boolean updateEmptyColumn)
设置是否更新空列
- 参数:
updateEmptyColumn - updateEmptyColumn
- 返回:
- DataRow
-
isInsertNullColumn
public boolean isInsertNullColumn()
-
setInsertNullColumn
public void setInsertNullColumn(boolean insertNullColumn)
-
isInsertEmptyColumn
public boolean isInsertEmptyColumn()
-
isReplaceEmptyNull
public boolean isReplaceEmptyNull()
-
setInsertEmptyColumn
public void setInsertEmptyColumn(boolean insertEmptyColumn)
-
changeKey
替换key
- 参数:
key - key
target - target
remove - 是否删除原来的key
- 返回:
- DataRow
-
-
replaceEmpty
替换所有空值
- 参数:
value - value
- 返回:
- DataRow
-
trim
所有String类型的值执行trim
- 返回:
- this
-
-
compress
多个空白压缩成一个空格
- 返回:
- DataRow
-
-
-
-
replaceEmpty
替换所有空值
- 参数:
replace - replace
keys - keys
- 返回:
- DataRow
-
replaceNull
替换所有NULL值
- 参数:
replace - replace
keys - keys
- 返回:
- DataRow
-
-
-
-
join
拼接value
- 参数:
keys - keys
- 返回:
- String
-
-
-
-
-
-
-
-
-
convertNumber
指定key转换成number
- 参数:
keys - keys
- 返回:
- DataRow
-
-
-
contains
public boolean contains(String key)
是否包含key(不要求完全匹配, 根据KEY_CASE有可能不区分大小写)
- 参数:
key - key
- 返回:
- boolean
-
get
返回第一个存在的key对应的value, key不要求完全匹配根据KEY_CASE有可能不区分大小写
如果需要取第一个不为null的值调用nvl(String ... keys)
第一个不为空的值调用evl(String ... keys)
- 参数:
keys - keys
- 返回:
- Object
-
-
-
recursion
按keys顺序递归取值, 如果其中一层是数组 取第0个,不支持多维数组
strict=false时, 如果遇到基础类型值(包含String)则直接返回当前值,忽略之后的key
strict=true时,必须提取到最后一层,如果失败则返回null
如提取用户的部门的领导的年率, 中间遇到部门只是个String类型, 则直接返回部门String
- 参数:
strict - 是否严格按key顺序提取到最后一层
keys - keys
- 返回:
- Object
-
-
-
-
add
在key列基础上 +value, 如果原来没有key列则默认0并put到target
如果target与key一致则覆盖原值
- 参数:
target - 计算结果key
key - key
value - value
- 返回:
- DataRow
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
divide
除法,涉及到小数位与舍入问题可以提供scale, mode参数
- 参数:
target - 结果保存位置, 如果与key一致则覆盖原值
key - 属性
scale - 小数位
round - 舍入模式 参考BigDecimal静态常量
ROUND_UP = 0 舍入远离零的舍入模式 在丢弃非零部分之前始终增加数字(始终对非零舍弃部分前面的数字加 1) 如:2.36 转成 2.4
ROUND_DOWN = 1 接近零的舍入模式 在丢弃某部分之前始终不增加数字(从不对舍弃部分前面的数字加1, 即截短). 如:2.36 转成 2.3
ROUND_CEILING = 2 接近正无穷大的舍入模式 如果 BigDecimal 为正, 则舍入行为与 ROUND_UP 相同 如果为负, 则舍入行为与 ROUND_DOWN 相同 相当于是 ROUND_UP 和 ROUND_DOWN 的合集
ROUND_FLOOR = 3 接近负无穷大的舍入模式 如果 BigDecimal 为正, 则舍入行为与 ROUND_DOWN 相同 如果为负, 则舍入行为与 ROUND_UP 相同 与ROUND_CEILING 正好相反
ROUND_HALF_UP = 4 四舍五入
ROUND_HALF_DOWN = 5 五舍六入
ROUND_HALF_EVEN = 6 四舍六入 五留双(银行家舍入法)
如果舍弃部分左边的数字为奇数, 则舍入行为与 ROUND_HALF_UP 相同(四舍五入)
如果为偶数, 则舍入行为与 ROUND_HALF_DOWN 相同(五舍六入)
如:1.15 转成 1.2, 因为5前面的1是奇数;1.25 转成 1.2, 因为5前面的2是偶数
ROUND_UNNECESSARY=7 断言所请求的操作具有准确的结果,因此不需要舍入。如果在产生不精确结果的操作上指定了该舍入模式,则会抛出ArithmeticException异常
- 返回:
- DataRow
-
-
-
-
-
-
-
round
舍入
- 参数:
target - 结果保存位置,如果与key一致则覆盖原值
key - 属性
scale - 小数位
mode - 舍入模式 参考BigDecimal静态常量
ROUND_UP = 0 舍入远离零的舍入模式 在丢弃非零部分之前始终增加数字(始终对非零舍弃部分前面的数字加 1) 如:2.36 转成 2.4
ROUND_DOWN = 1 接近零的舍入模式 在丢弃某部分之前始终不增加数字(从不对舍弃部分前面的数字加1,即截短). 如:2.36 转成 2.3
ROUND_CEILING = 2 接近正无穷大的舍入模式 如果 BigDecimal 为正,则舍入行为与 ROUND_UP 相同 如果为负,则舍入行为与 ROUND_DOWN 相同 相当于是 ROUND_UP 和 ROUND_DOWN 的合集
ROUND_FLOOR = 3 接近负无穷大的舍入模式 如果 BigDecimal 为正,则舍入行为与 ROUND_DOWN 相同 如果为负,则舍入行为与 ROUND_UP 相同 与ROUND_CEILING 正好相反
ROUND_HALF_UP = 4 四舍五入
ROUND_HALF_DOWN = 5 五舍六入
ROUND_HALF_EVEN = 6 四舍六入 五留双(银行家舍入法)
如果舍弃部分左边的数字为奇数,则舍入行为与 ROUND_HALF_UP 相同(四舍五入)
如果为偶数,则舍入行为与 ROUND_HALF_DOWN 相同(五舍六入)
如:1.15 转成 1.2,因为5前面的1是奇数;1.25 转成 1.2,因为5前面的2是偶数
ROUND_UNNECESSARY=7 断言所请求的操作具有准确的结果,因此不需要舍入。如果在产生不精确结果的操作上指定了该舍入模式,则会抛出ArithmeticException异常
- 返回:
- DataRow
-
-
-
-
-
-
dateParse
日期解析,推荐调用parse.date()
- 参数:
src - 源列
tar - 结果列
format - 如果是String 按format格式解析
def - 默认值
- 返回:
- DataRow
-
numberParse
数字解析,解析成BigDecimal 推荐调用parse.number()
- 参数:
src - 源列
tar - 结果列
def - 默认值 如果默认值转换数字失败会抛出异常
- 返回:
- DataRow