JDBC学习

JDBC:使用Java语言去操作关系型数据库的一套接口。

由于使用的是Mysql,导入相应的Mysql驱动:

使用具体包括以下一些步骤:

一、与sql数据库获取连接:

1)使用DriverManager去获取数据库连接:

2)使用DataSource来获取数据库连接:

为什么会出现数据库连接池技术?

数据库连接池怎么实现的?Sun公司提供了一套标准的接口DataSource。具体由第三方组织实现,比如Druid是阿里巴巴开发的一套数据库连接池,非常强大。

常见的数据库连接池

  • DBCP
  • C3P0
  • Druid

数据库连接池Druid:进一步优化了JDBC。

Druid是阿里巴巴开源的一个数据库连接池实现,它不仅实现了JDBC规范中的DataSource接口,还提供了一些额外的功能和性能优化。

二、定义SQL语句

关于sql语句有很多问题需要注意的,是否需要参数以及参数如何传递给sql语句:

第一种方法是使用+进行字符串拼接,但是这种方式会存在sql注入。

第二种是使用占位符?,然后使用PreparedStatement对象的setXXX()方法传递参数,如pstmt.setString(1,brandName);

可以做到对sql语句进行预编译以及防止sql注入。

可以观察到参数需要一个一个传递的,很麻烦。

1)查询:String sql = "select * from tb_brand";

2)插入:String sql = "insert into tb_brand(brand_name, company_name, ordered, description, status) values(?,?,?,?,?)";

3)修改:String sql = " update tb_brand\n" +

        "         set brand_name  = ?,\n" +

        "         company_name= ?,\n" +

        "         ordered     = ?,\n" +

        "         description = ?,\n" +

        "         status      = ?\n" +

        "     where id = ?";

4)删除:String sql = " delete from tb_brand where id = ?";

三、获取执行SQL语句的对象

有两种类型的对象,分别是Statement和PreparedStatement。

(1)Statement st = con.createStatement();

(2)PreparedStatement pst = con.prepareStatement(sql);

四、执行SQL语句

四、对返回结果进行处理

五、释放资源

所谓规范,就是自己定义了标准接口,做了如下抽象:用Connection代表和数据库的连接,用Statement执行SQL,用ResultSet表示SQL返回的结果,提供了对数据的便利。从Connection可以创建Statement,Statement执行查询得到ResultSet。

上面说的Connection、Statement、ResultSet都应该是接口,具体实现由各个数据库提供商提供。有了规范,可以通过统一的接口,访问多种类型的数据库,可随便切换数据库。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值