牛客网的JDBC总结

1 Statement 每次执行sql语句,数据库都要执行sql语句的编译 ,最好用于仅执行一次查询并返回结果的情形,效率高于PreparedStatement.

2 PreparedStatement是预编译的,使用PreparedStatement有几个好处

a. 在执行可变参数的一条SQL时,PreparedStatement比Statement的效率高,因为DBMS预编译一条SQL当然会比多次编译一条SQL的效率要高。

b. 安全性好,有效防止Sql注入等问题。

c. 对于多次重复执行的语句,使用PreparedStament效率会更高一点,并且在这种情况下也比较适合使用batch;

d. 代码的可读性和可维护性。

CallableStatement接口扩展 PreparedStatement,用来调用存储过程,它提供了对输出和输入/输出参数的支持。CallableStatement 接口还具有对 PreparedStatement 接口提供的输入参数的支持。

3 ResultSet跟普通的数组不同,索引从1开始而不是从0开始

4 加载驱动方法1.Class.forName(“com.microsoft.sqlserver.jdbc.SQLServerDriver”);2. DriverManager.registerDriver(new com.mysql.jdbc.Driver());
3.System.setProperty(“jdbc.drivers”, “com.mysql.jdbc.Driver”);

5 DriverManager.getConnection方法返回一个Connection对象,这是加载驱动之后才能进行的

7 1.Statement、PreparedStatement和CallableStatement都是接口(interface)。

2.Statement继承自Wrapper、PreparedStatement继承自Statement、CallableStatement继承自PreparedStatement

3.
Statement接口提供了执行语句和获取结果的基本方法;
PreparedStatement接口添加了处理 IN 参数的方法;
CallableStatement接口添加了处理 OUT 参数的方法。

4.
a.Statement:
普通的不带参的查询SQL;支持批量更新,批量删除;

b.PreparedStatement:
可变参数的SQL,编译一次,执行多次,效率高; 安全性好,有效防止Sql注入等问题;
支持批量更新,批量删除;

c.CallableStatement:
继承自PreparedStatement,支持带参数的SQL操作;
支持调用存储过程,提供了对输出和输入/输出参数(INOUT)的支持;

Statement每次执行sql语句,数据库都要执行sql语句的编译 ,
最好用于仅执行一次查询并返回结果的情形,效率高于PreparedStatement

8 加载jdbc的顺序:1、加载JDBC驱动程序:
2、提供JDBC连接的URL
3、创建数据库的连接
4、创建一个Statement
5、执行SQL语句
6、处理结果
7关闭JDBC对象

9 executeUpdate(sql)
用于执行给定 SQL 语句,该语句可能为 INSERT、UPDATE 或 DELETE 语句,或者不返回任何内容的 SQL 语句。
返回值是更新的条数。
executeQuery(sql)
这个方法被用来执行 SELECT 语句,返回代表查询结果的ResultSet对象

10 Statement对象用于执行不带参数的简单SQL语句。
2、Prepared Statement 对象用于执行预编译SQL语句。
3、Callable Statement对象用于执行对存储过程的调用。

11 DBMS中事务有四个特性,持久性,一致性,原子性,隔离性,持久性实现恢复管理子系统,一致性实现并发控制子系统,原子性实现完整性管理子系统,隔离性实现安全控制管理子系统 个人理解

12 在开发中使用PreparedStatements,不要使用statement
为什么呢?
PreparedStatements是预编译的,PreparedStatements实例包涵已编译的sql语句,所以其执行呢速度要快于statement对象。
PreparedStatements作为statement的子类,继承了statement的所有方法,三种方法,excute,excuteQuery和excuteUpdate已被更改以使之不再需要参数。
PreparedStatements的代码可读性,可维护性强于statement.
极大的提高了安全性

13 Jdbc连接数据库一般分为以下几步:
//声明数据库驱动,数据源的url,用于登录数据库的账户和密码(将其他功能封装成方法的时候方便使用)
String driver = “数据库驱动名称”;
String url = “数据库连接地址”
String user = “用来连接数据库的用户名”;
String pwd = “用来连接数据库的密码”;
//加载数据库驱动
Class.forName(driver);
//根据url创建数据库连接对象Connection
Connection con = DriverManage.getConnection(url,user,pwd);
//用数据库连接对象创建Statement对象(或PrepareStatement)
Statement s = con.createStatement();

PrepareStatement ps = con.PrepareStatement(sql);
//做数据库的增删改查工作
ResultSet rs = s.executeQuery();
//关闭结果集对象Resultset,statement对象,connection对象,
rs.close();
s.close();
con.close();
//各个步骤的异常处理

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值