JDBC入门学习

JDBC学习总结

1. 快速入门

步骤:

  1. 导入驱动jar包 mysql-connector-java-5.1.37-bin.jar
  • 复制mysql-connector-java-5.1.37-bin.jar到项目的libs目录下
  • 右键–>Add As Library
    此处发生了一些问题,在运行时出现了以下错误提示

com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server.
报错原因
mysql驱动版本与mysql数据库不一致;
解决方案
下载版本相同的mysql驱动

  1. 注册驱动
    Class.forName("com.mysql.cj.jdbc.Driver");

  2. 获取数据库连接对象 Connection
    DriverManager.getConnection("jdbc:mysql://localhost:3306/db", "用户名", "密码")
    编译时此处又发生错误
    InvalidConnectionAttributeException: The server time zone value ''Öйú±ê׼ʱ¼ä' is unrecognized
    报错原因
    java6之后在创建链接对象时要设置时区
    解决方案
    在url参数字符串后添加时区信息
    出现警告Establishing SSL connection without server‘s identity verification is not recommende的解决方案

  3. 定义sql
    此处定义字符串String str接收SQL语句

  4. 获取执行sql语句的对象 Statement
    Connection.CreateStatement()

  5. 执行sql,接受返回结果
    Statement.ExcuteQuery(str) //查询语句执行,返回结果集ResultSet rs
    Statement.ExcuteUpdate(str) //更新语句执行,返回int

  6. 处理结果
    结果集遍历方法
    while(rs.next()){rs.getXXX("列名") }

  7. 释放资源
    if not null, 调用close
    注意在try catch代码块之外声明各种需要被释放的资源对象

2. 自定义Utils工具类抽取

我们在书写代码的时候发现,每次操作数据库时都有大量重复的代码,我们可以将这些重复的抽取出来,写入自定义的JDBCUtils工具类的静态方法中,简化代码复用的问题

2.1. Properties集合类

我们注意到一行关键代码:DriverManager.getConnection("jdbc:mysql://localhost:3306/db?serverTimezone=GMT&characterEncoding=utf-8&useSSL=false", "用户名", "密码")</

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值