mysql jdbc批量更新_jdbc批量更新数据
{
boolean add = true;
Connection conn = null;
PreparedStatement pst = null;
String sql = null;
try
{
conn = this.getConnection();
conn.setAutoCommit(false);
// sql = "MERGE INTO PUSH_NUMBER T1 "
// + " USING (SELECT ? AS MOBILE, ? AS PKG_ID FROM DUAL) T2 "
// + " ON (T2.MOBILE=T1.USER_NUMBER AND T2.PKG_ID=T1.PKG_ID) " + " WHEN NOT MATCHED THEN "
// + " INSERT VALUES(SEQ_PUSH_NUMBER.NEXTVAL,?,?)";
sql = "insert into PUSH_NUMBER(NUMBER_ID,USER_NUMBER,PKG_ID) values(null,?,?)";
pst = conn.prepareStatement(sql);
int num = 0;
for (String mobile : numbers)
{
num++;
pst.setString(1, mobile);
pst.setInt(2, pkgId);
pst.addBatch();
if (num % 30000 == 0)
{
pst.executeBatch();
pst.clearBatch();
}
}
if (num > 0)
{
pst.executeBatch();
}
conn.commit();
}
catch (Exception e)
{
add = false;
logger.error("addNumber was failed!", e);
}
finally
{
if (null != pst)
{
pst.close();
}
if (null != conn)
{
conn.close();
}
}
return add;
}
spring jdbc批量入库
//采用insert into replace 检测手机号码是否存在,存在更新,不存在新增
String sql = "insert into push_token(token,mobile) values(?,?) on DUPLICATE KEY UPDATE token = ?";
List args = new ArrayList();
for (int i = 0; i < tokens.size(); i++) {
Object[] objects = new Object[]{tokens.get(i), mobiles.get(i), tokens.get(i)};
args.add(objects);
}
//3000条提交一次
ArrayList temp = new ArrayList(3000);
List copy = null;
for (Object[] objects : args) {
temp.add(objects);
if (temp.size() >= 3000) {
copy = (List) temp.clone();
temp.clear();
if (temp.isEmpty() && copy.size() >= 3000) {
getJdbcTemplate().batchUpdate(sql, copy);
}
}
}
if (temp.size() > 0) {
copy = (List) temp.clone();
temp.clear();
if (temp.isEmpty() && copy.size() > 0) {
getJdbcTemplate().batchUpdate(sql, copy);
}
}
mysql jdbc批量更新_jdbc批量更新数据相关推荐
- mysql jdbc驱动 批量更新_jdbc批量插入,删除,更新
批量处理:一次向数据库发送多个SQL语句时,可以减少通信开销,从而提高性能. 不确定JDBC驱动程序是否支持此功能.应该使用DatabaseMetaData.supportsBatchUpdates( ...
- mysql jdbc 分页查询_JDBC与MySQL实现分页查询技术
由于通过ResultSet的光标实现数据分页存在占用大量资源等性能方便的缺陷,所以,在实际开发中,通过采用数据库的分页机制来实现分页查询功能更为上上之策. 下面我就通过MySQL数据库提供的分页机制来 ...
- mysql jdbc无法连接_jdbc无法连接mysql
mysql_connector_java_5.1.34_bin.jar(5.1.19驱动也不行) mysql5.6 代码: private static String JDBCDriver=" ...
- mysql jdbc 绑定变量_jdbc测试mysql数据库sql预解析(绑定变量)
jdbc测试mysql数据库sql预解析(绑定变量) 用习惯了oracle,学习mysql,想测试一下mysql绑定变量的效果.以前看网上介绍大部份都说mysql没有sql共享池的概念,所以也不存在s ...
- mysql jdbc 表结构_JDBC操作表:JDBC修改表结构
操作数据库:mysql 操作目的:通过增加字段,删除字段,修改字段和修改字段类型的方式让大家熟练掌握通过JDBC修改表结构. 在通过JDBC修改表结构前,我们还是先看下当前的表结构,如下图所示: 1. ...
- mysql jdbc连接失败_JDBC连接MySQL失败
梳理一下连接需要注意的关键点 1.首先需要导入外部的驱动jar包,jar包与MySQL的版本最好对应,一般都是用最新的就没问题. 2.最新驱动加载时要使用Class.forname("com ...
- mysql jdbc连接串_jdbc连接字符串
MySQL: String Driver="com.mysql.jdbc.Driver"; //驱动程序 String URL="jdbc:mysql://localho ...
- mysql jdbc 占位符_JDBC中占位符报错是什么鬼啊
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 import java.sql.*; import org.junit.Test; /** * 测试sql注入问题 * @author Wangjiany ...
- mybatis generator一对一映射,一对多映射,批量插入,批量更新
mybatis-generator这是原来的github地址 现在在此基础上添加了一对一和一对多映射配置,配置在table标签上 如果需要一对一配置生成,需要添加插件配置 在context中添加如下配 ...
最新文章
- 基于Ubuntu交叉编译FFmpeg Windows SDK
- 读写分离原来这么简单,一个小注解就够了
- css编写要注意什么 及一些公用的样式和外部引用 转码
- 计算一个全息图片的两个设想
- 【iOS学习笔记】IOS开发中设置applicationIconBadgeNumber和消息推送
- 解决oracle中文数据乱码的问题
- java data是什么文件_如何用java实现 读取一个data类型文件 并显示出来(随便选择一种类型txt或者word)...
- 第九章 Libgdx内存管理
- linux dd入门,Linux基础知识:Linux中DD命令详解
- java基础排序_Java排序算法-Java入门|Java基础课程
- Stats mac免费版 2.4.9(支持M1驱动器的mac,最新macOS系统)
- Android布局_LinearLayout布局
- matlab自动识别粗大误差,剔除粗大误差
- sharp s2 android 9,夏普s2第三方ROM AOSP(Android P)v105
- 专业技能与职业素养报告计算机,职业技能与职业素养的心得体会
- JS实现滚动栏的效果
- 架狗屎:聊一聊 Spring Boot 服务监控机制
- 【luogu 3397】地毯 差分
- Qt编写视频监控管理平台(支持海康/大华/宇视/华为/天地伟业/H264/H265等)
- .NET5.0 初始
热门文章
- python super()函数(用来调用父类方法)
- Intel Realsense python 关于能否使用单个align对象去处理多个流 (对齐process)
- python os.removedirs() 和shutil.rmtree()(os.removedirs用于删除非空文件夹和子文件夹、shutil.rmtree用于删除文件夹下所有文件夹和文件)
- pycharm Enable Live Templates的作用
- Python 科学计算库 Numpy (二) —— 索引及切片
- DreamWeaver下如何应用CSS样式
- 安装OpenResty,实现分发层、应用层nginx+lua开发(附加问题:bad argument #2 to ‘set_keepalive‘ (number expected, got nil)
- php 删除文件时间,php删除文件后重建,文件创建时间(filectime)未变化怎么解决??...
- php 实验室管理系统,生物信息实验室管理系统-Metalims安装
- Linux环境下搭建 MySQL8 主从复制