-
-
方法概要
int[]
int[]
int[]
int[]
int[]
int[]
int
批量处理数据列表,对每个元素调用单条数据格式化方法
获取表所在数据库类型:mysql,mssql,oracle
int
int
int
void
从类继承的方法 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
构造器详细资料
-
Table
构造函数,用于初始化表操作相关对象
- 参数:
key - 数据源标识键
tableName - 要操作的表名
- 抛出:
SQLException - 当表名为空或表不存在时抛出异常
1. 表名为空时抛出"表名不能为空"异常
2. 表不存在时抛出"表不存在"异常
-
方法详细资料
-
getDatabaseName
@Comment("\u83b7\u53d6\u8868\u6240\u5728\u6570\u636e\u5e93\u540d\u79f0")
public String getDatabaseName()
throws
SQLException
获取表所在数据库名称
- 返回:
- 数据库名称字符串
- 抛出:
SQLException - 如果获取数据库名称时发生SQL异常
-
getDatabaseType
@Comment("\u83b7\u53d6\u8868\u6240\u5728\u6570\u636e\u5e93\u7c7b\u578b\uff1amysql,mssql,oracle")
public String getDatabaseType()
throws
SQLException
获取表所在数据库类型:mysql,mssql,oracle
- 返回:
- 数据库类型字符串(mysql/mssql/oracle)
- 抛出:
SQLException - 如果获取数据库类型时发生SQL异常
-
batchUpdate
@Comment("\u5355\u8868\u6279\u91cf\u66f4\u65b0")
public int[] batchUpdate(@Comment("\u4f8b\u5982\uff1a[{id:1,name:\'name\',old:23},{id:2,name:\'name\',old:23}]")
List<Map<String,Object>> data)
throws SQLException
单表批量更新
- 参数:
data - 批量更新的数据列表,格式例如:[{id:1,name:'name',old:23},{id:2,name:'name',old:23}]
- 返回:
- 更新结果数组
- 抛出:
SQLException - 当data为null时抛出
-
batchUpdate
@Comment("\u5355\u8868\u6279\u91cf\u66f4\u65b0")
public int[] batchUpdate(@Comment("\u4f8b\u5982\uff1a[{id:1,name:\'name\',old:23},{id:2,name:\'name\',old:23}]")
Map<String,Object>[] data)
throws SQLException
单表批量更新
- 参数:
data - 包含更新数据的Map数组,格式例如:[{id:1,name:'name',old:23},{id:2,name:'name',old:23}]
- 返回:
- 更新操作返回的int数组,每个元素对应一次更新操作的结果
- 抛出:
SQLException - 如果执行SQL过程中出现异常
-
update
@Comment("\u5355\u8868\u6279\u91cf\u66f4\u65b0")
public int update(@Comment("\u4f8b\u5982\uff1a{id:2,name:\'name\',old:3}")
Map<String,Object> dataMap)
throws SQLException
单表批量更新
- 参数:
dataMap - 包含更新数据的Map,格式如:{id:2,name:'name',old:3}。
其中id对应表的主键,其他字段为需要更新的字段
- 返回:
- 更新操作影响的行数
- 抛出:
SQLException - 当主键不存在或没有可更新字段时抛出异常
-
primary
@Comment("\u8bbe\u7f6e\u4e3b\u952e\u540d\uff0c\u9ed8\u8ba4:id")
public JdbcHelper.Table primary(@Comment("\u4e3b\u952e\u540d:id,\u4f8b\u5982: id,no....")
String... primaryKey)
设置主键名,默认:id
- 参数:
primaryKey - 主键名:id,例如: id,no.... 可变参数形式,允许设置多个主键名
- 返回:
- 返回当前Table对象,支持链式调用
-
where
@Comment("\u8bbe\u7f6ewhere\u8bed\u53e5")
public JdbcHelper.Table where(@Comment("\u6761\u4ef6\u8bed\u53e5,\u4f8b\u5982: id=1")
String where)
设置where语句
- 参数:
where - 条件语句,例如: id=1
- 返回:
- 当前Table对象,支持链式调用
-
-
validateValue
数据格式验证
根据表字段映射信息验证输入数据Map中的字段值是否符合要求,包括:
1. 检查必填字段是否为空
2. 检查字符串类型字段长度是否超过最大限制
- 参数:
dataMap - 包含待验证数据的Map,key为字段名,value为字段值
- 抛出:
SQLException - 当验证不通过时抛出异常,包含具体的错误信息
-
-
-
-
-
batchInsert
@Comment("\u5355\u8868\u6279\u91cf\u63d2\u5165")
public int[] batchInsert(@Comment("\u4f8b\u5982: [{id:3,name:\'name\',old:3},{id:2,name:\'name\',old:3}]")
List<Map<String,Object>> data)
throws SQLException
单表批量插入
- 参数:
data - 待插入的数据列表,格式例如: [{id:3,name:'name',old:3},{id:2,name:'name',old:3}]
- 返回:
- 批量插入操作的结果数组
- 抛出:
SQLException - 当data为null时抛出异常
-
batchInsert
@Comment("\u6279\u91cf\u6dfb\u52a0")
public int[] batchInsert(@Comment("\u4f8b\u5982: [{id:3,name:\'name\',old:3},{id:2,name:\'name\',old:3}]")
Map<String,Object>[] dataList)
throws SQLException
批量添加数据到数据库
- 参数:
dataList - 包含多个数据对象的Map数组,每个Map代表一条记录,
例如: [{id:3,name:'name',old:3},{id:2,name:'name',old:3}]
- 返回:
- 插入操作返回的结果数组,每个元素对应一条记录的插入结果
- 抛出:
SQLException - 当数据库操作出现异常时抛出
-
getSQLInsert
@Comment("\u6839\u636e\u8868\u7ed3\u6784\u83b7\u53d6\u63d2\u5165\u8bed\u53e5")
public String getSQLInsert()
throws
SQLException
根据表结构获取插入语句
- 返回:
- 生成的INSERT SQL语句,格式为:INSERT INTO 表名(字段1,字段2...) VALUES(#{字段1},#{字段2}...)
- 抛出:
SQLException - 如果获取表结构信息时发生数据库错误
-
insert
@Comment("\u5355\u8868\u63d2\u5165\u6570\u636e")
public int insert(@Comment("\u4f8b\u5982: {id\uff1a3\uff0cname:\'name\',old:3}")
Map<String,Object> dataMap)
throws SQLException
单表插入数据
- 参数:
dataMap - 包含要插入数据的Map对象,例如: {id:3,name:'name',old:3}
- 返回:
- 插入操作影响的行数
- 抛出:
SQLException - 如果执行SQL时发生错误
-
delete
@Comment("\u6839\u636e\u4e3b\u5065\u5220\u9664\u6570\u636e")
public int delete(@Comment("\u4f8b\u5982\uff1a1\u6216\u8005\u5b57\u7b26\u4e32")
Object id)
根据主键删除数据
- 参数:
id - 主键值,可以是单个值(如数字或字符串)或包含多个主键的Map集合
例如:1 或者字符串,或者包含多个键值对的Map
- 返回:
- 返回受影响的行数,0表示没有删除任何记录
- 抛出:
RuntimeException - 当没有定义任何主键时抛出异常
-
batchDelete
@Comment("\u6839\u636e\u4e3b\u5065\u6279\u91cf\u5220\u9664\u6570\u636e")
public int[] batchDelete(@Comment("\u4f8b\u5982: [1,2,3]")
List<Object> ids)
根据主健批量删除数据
- 参数:
ids - 主键ID列表,例如: [1,2,3]
- 返回:
- 每个ID对应的删除操作结果数组
-
batchDelete
@Comment("\u6839\u636e\u4e3b\u5065\u6279\u91cf\u5220\u9664\u6570\u636e")
public int[] batchDelete(@Comment("\u4f8b\u5982: [1,2,3]")
Object[] ids)
根据主键批量删除数据
- 参数:
ids - 主键ID数组,例如: [1,2,3]
- 返回:
- 删除操作的结果数组(当前实现有误,返回的是错误值)