jdbc:mysql和oracle插入一条数据返回主键
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,package org.sin.common.dao;import java.sql.CallableStatement;import java.sql.Connection;import java.
千家信息网最后更新 2026年11月02日jdbc:mysql和oracle插入一条数据返回主键
package org.sin.common.dao;import java.sql.CallableStatement;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import oracle.jdbc.OracleTypes;import org.sin.domain.User;public class JDBCDao { private static boolean mysql = false; private Connection conn; static { try { if (mysql) { Class.forName("com.mysql.jdbc.Driver"); } else { Class.forName("oracle.jdbc.driver.OracleDriver"); } } catch (ClassNotFoundException e) { e.printStackTrace(); } } private JDBCDao() { String url, user, password; if (mysql) { url = "jdbc:mysql://127.0.0.1:3306/cl"; user = "root"; password = ""; } else { url = "jdbc:oracle:thin:@localhost:1521:orcl"; user = "andy"; password = "root"; } try { conn = DriverManager.getConnection(url, user, password); System.out.println(conn.getAutoCommit()); } catch (SQLException e) { e.printStackTrace(); } } private User SaveUser(User user) { String sql = "insert into t_User(id,username,password) values(user_id.nextval,?,?)"; Long id = -1L; try { conn.setAutoCommit(false); PreparedStatement ps = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS); int i = 0; for (i = 0; i < 10000; i++) { ps.setString(1, user.getUsername() + "-" + i); ps.setString(2, user.getPassword() + "-" + i); ps.executeUpdate(); ResultSet rs = ps.getGeneratedKeys(); while (rs.next()) { id = rs.getLong(1); System.out.println(">>>>>>>" + id); } } conn.commit(); } catch (SQLException e) { e.printStackTrace(); } user.setId(id); return user; } private User SaveUser2(User user) { String sql = "BEGIN insert into t_user(id,username,password) values(user_id.nextval,?,?) returning id into ?; END;"; Long id = -1L; try { conn.setAutoCommit(false); CallableStatement cs = conn.prepareCall(sql); for(int i=0;i<10000;i++){ cs.setString(1, user.getUsername() + "-" + i); cs.setString(2, user.getPassword() + "-" + i); cs.registerOutParameter(3, OracleTypes.NUMBER); cs.execute(); id = cs.getLong(3); } conn.commit(); } catch (SQLException e) { e.printStackTrace(); } user.setId(id); return user; } public static void main(String[] args) { JDBCDao dao = new JDBCDao(); Long start = System.currentTimeMillis(); User u = new User("andy", "andypwd"); dao.SaveUser2(u); Long end = System.currentTimeMillis(); System.out.println(u.getId() + "--" + u.getUsername()); Long k = end - start; System.out.println("消耗:" + k); }}
消耗
数据
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技
什么是科技互联网
为想互联网科技怎么样
互联网属科技
互联网品科技
科技企业和互联网企业
北京互联网科技
互联网科技集团
苏州互联网科技贷款公司
佰商互联网科技有限公司
科技互联网的估值
恒银科技与互联网金融
互联网科技有哪些公司
南平创想时代互联网科技有限公司
互联网媒体平台算高科技产业
中国互联网公司排名锤子科技
群盈汇互联网科技有限公司
厦门江牛科技互联网
互联网大会出现的黑科技
中国主要互联网科技公司
湖北九亚互联网络科技有限公司
A股互联网金融科技公司
互联网的科技创新
互联网科技大会案例
青岛中康互联网医疗科技有限公司
深圳市优智互联网科技有限公司
互联网公司黑科技创始人
半导体是互联网高科技吗
上海互联网科技公司ppt
高科技和互联网的现代国家