Java基础面试题(2)
阐述JDBC操作数据库的步骤
加载驱动
Class.forName(com.mysql.jdbc.Driver);
创建连接
Connection conn=DriverManager.getConnection(“jdbc:mysql://localhost:3306/数据库名”,“root”,“root”);
创建语句
PreparedStatement ps=conn.prepareStatement(“select * from emp where sal between ? and ?”);
ps.setInt(1,1000);
ps.setInt(2,3000);
执行语句
ResultSet rs=ps.executeQuery();
处理结果集
while(rs.next()){
…
}
关闭资源
finally{
if(conn!=null){
try{
conn.close();
}catch(SQLException e){
e.printStackTrace();
}
}
}
提示
关闭外部资源的顺序应该和打开的顺序相反,也就是说先关闭ResultSet,再关闭Statement,再关闭Connection。
Statement和PrepareStatement有什么区别?
1.PrepareStatement的Sql语句中可以加入参数;
2.PrepareStatement能够防止注入式攻击。