sql批处理
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.util.Random;
public class BatchTest {
static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";
static final String DB_URL = "jdbc:mysql://localhost:3306/dn1?useSSL=false&serverTimezone=UTC";
static final String USER = "root";
static final String PASS = "123456";
public Connection getConnection() {
Connection conn = null;
try {
Class.forName(JDBC_DRIVER);
conn = DriverManager.getConnection(DB_URL,USER,PASS);
System.out.println("数据库conn创建成功!");
} catch (Exception e) {
System.out.println("数据库conn创建失败!");
e.printStackTrace();
}
return conn;
}
public int saveBatch() {
int res = 0;
Connection conn = getConnection();
try {
String sql = "insert into stu(uname,upwd) values(?,?)";
PreparedStatement ps = conn.prepareStatement(sql);
Random random = new Random();
for(int i=0;i<4;i++) {
ps.setString(1, "用户"+i);
ps.setString(2, "m"+random.nextInt(10000));
ps.addBatch();
}
int[] rows = ps.executeBatch();
for(int i : rows) {
System.out.println(i);
}
res = rows.length;
ps.close();
conn.close();
System.out.println("成功!");
} catch (Exception e) {
System.out.println("失败!");
e.printStackTrace();
}
return res;
}
}
调用存储过程
public void findAll() {
Connection conn = getConnection();
try {
CallableStatement cs = (CallableStatement) conn.prepareCall("{call Test2()}");
ResultSet rs = cs.executeQuery();
while(rs.next())
{
System.out.println(rs.getString(1)+" "+rs.getString(2)+" "+rs.getString(3)+" "+rs.getString(4));
}
} catch (Exception e) {
}
}