JAVA链接数据库步骤
1.加载驱动 2.建立链接 3.获取statement语句对象执行sql 4.处理结果集 5.关闭连接
加载驱动
Class.forName(驱动名称)
建立连接
connection = DriverManager.getConnection(数据库ip地址, 用户名, 密码);
.setAutoCommit(Boolean)设置事务是否开启 .commit()提交事务 .rollback()回滚事务
获取statement对象
Statement的-sql注入:sql语句字符串中拼接恒等式,能操作所有记录,statement是固定的sql语句
PrepareStatement能有效防止sql注入,因为我们的sql已经提前编译好了,能够替换参数执行sql,外部不能改变sql语句的结构
Tips:俩种语句对象看情况使用每次查询都是一次网络请求,statement适合只执行一次的sql语句,每次执行都会通过jdbcDriver发送一次网络请求,dbms都会编译解释一次,多次执行就多次解释,这种情况比较耗性能;preparestatement适合多次会被执行的sql语句,执行sql语句前,会提前发送一次网络请求,dbms将我们的sql语句预先在解释编译一次,虽然以后每次执行都会发送网络请求,但每次执行sql就不会都编译了,而是来了之后直接运行(.batch是批处理的意思(先将多个sql放在一起,然后使用.ExecuteBatch一次性将这些语句都发到dbms中))
处理结果集:
ResultSet类:.metaData:获取元数据(临时表的结构信息) .get~获取各种数据
Result结果集的.next方法详解:最开始光标的位置位于第一条记录的上方,调用一次.next方法光标就下移一次,移动之后如果光标指向的位置有数据就返回true,否则返回false,执行到最后一条记录时,光标移动到最后一条记录的下方,此时指向的为null,返回false,此时光标的位置在最后一条记录的下方
关闭资源
.close关闭(后开先关):先关结果集,在关statement,最后管链接connection
标签:语句,JDBC,19,08,一次,statement,sql,执行,光标 From: https://www.cnblogs.com/404tly/p/16603260.html