zoukankan      html  css  js  c++  java
  • java_jdbc_batch处理_主键id获取

    //create1 速度较慢,create2较快,但是要根据数据库不同来决定

    //ps = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS); ps可以获取 id

    package cn.itcast.batch;
    
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    
    import cn.itcast.JdbcUtils;
    import cn.itcast.user.DaoExcetpion;
    import cn.itcast.user.User;
    
    public class BatchTest {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    
    	}
    
    	public static void create(int i) {
    		Connection conn = null;
    		PreparedStatement ps = null;
    		ResultSet rs = null;
    
    		try {
    			conn = JdbcUtils.getConnection();
    			String sql = "insert into t_user(username,password) values (?,?) ";
    			ps = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
    			ps.setString(1, "batch name" + i);
    			ps.setString(2, "password1");
    
    			ps.executeUpdate();
    
    			// 可以利用注析代码为bean赋值,id赋值,不用return
    			// rs=ps.getGeneratedKeys();
    			// int id=0;
    			// if(rs.next()){
    			// id = rs.getInt(1);
    			// }
    			// return id;
    		} catch (SQLException e) {
    			throw new DaoExcetpion(e.getMessage(), e);
    		} finally {
    			JdbcUtils.free(rs, ps, conn);
    		}
    	}
    
    	public static void create2(int i) {
    		Connection conn = null;
    		PreparedStatement ps = null;
    		ResultSet rs = null;
    
    		try {
    			conn = JdbcUtils.getConnection();
    			String sql = "insert into t_user(username,password) values (?,?) ";
    			ps = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
    			for (int y = 0; y < 100; y++) {
    				ps.setString(1, "batch name " + i);
    				ps.setString(2, "batch password " + i);
    				ps.addBatch();
    			}
    			int[] iS = ps.executeBatch();
    			// ps.executeUpdate();
    
    		} catch (SQLException e) {
    			throw new DaoExcetpion(e.getMessage(), e);
    		} finally {
    			JdbcUtils.free(rs, ps, conn);
    		}
    	}
    }
    


     

  • 相关阅读:
    2020-2021-1 20201314 《信息安全专业导论》第三周学习总结
    罗马数字转阿拉伯数字
    BASE64编码-20201314黄斯阳
    学期(2020-2021-1) 学号(20201314) 《信息安全专业导论》第2周学习总结
    师生关系
    快速浏览教材 。
    浏览教材的疑问
    2020-2021-1 20201314 《信息安全专业导论》第一周学习总结
    第四周作业补交
    第四周作业
  • 原文地址:https://www.cnblogs.com/MarchThree/p/3720425.html
Copyright © 2011-2022 走看看