test.java
来自「本套光盘提供了本书各章实例的所需的部分源程序文件以及数据库文件。读者 需要使用」· Java 代码 · 共 69 行
JAVA
69 行
import java.sql.*;
public class test {
private static Connection con = null;
static String url = "jdbc:microsoft:sqlserver://localhost:1433;User=JavaDB;Password=javadb;DatabaseName=northwind";
public test(){
}
public static void main(String args[]){
try{
Class.forName ("com.microsoft.jdbc.sqlserver.SQLServerDriver");
preparedStatementInsertTest_2();
System.out.println("===================");
preparedStatementInsertTest_1();
}
catch(Exception ex){
ex.printStackTrace();
}
}
//方法1以不恰当的方式使用了PreparedStatement接口
public static void preparedStatementInsertTest_1(){
try{
con = DriverManager.getConnection(url);
PreparedStatement pst = null;
long start = System.currentTimeMillis();
//执行1000次语句结构相同的查询
for(int i=0;i<1000;i++){
pst = con.prepareStatement("select * from firsttable where ID = " + i%11);
pst.executeQuery();
pst.close();
}
System.out.println("Methord_1 Execute Ellapse:"
+(System.currentTimeMillis()-start)
+"ms");
con.close();
}
catch(Exception ex){
ex.printStackTrace();
}
}
//方法2以正确的方式使用了PreparedStatement接口
public static void preparedStatementInsertTest_2(){
try{
con = DriverManager.getConnection(url);
long start = System.currentTimeMillis();
PreparedStatement pst = null;
pst = con.prepareStatement("select * from firsttable where ID = ?");
//执行1000次语句结构相同的查询
for(int i=0;i<1000;i++){
//因为我们的数据表中只有11个记录
pst.setInt(1,i%11);
pst.executeQuery();
}
System.out.println("Methord_2 Execute Ellapse:"
+(System.currentTimeMillis()-start)
+"ms");
pst.close();
con.close();
}
catch(Exception ex){
ex.printStackTrace();
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?