Java小案例|Jdbc数据库的连接工具类


Jdbc数据库的连接工具类

    • 1. 开篇简述
    • 2. 驱动导包
    • 3. 注意事项
    • 4. 代码实现
    • 5. 总结

1. 开篇简述 【Java小案例|Jdbc数据库的连接工具类】嗨,大家好!!!
在熬过了,有差不多一周多吧,小编最近不知道分享点什么好,这两天,琢磨琢磨,就想给大家分享一下,关于数据库怎么连接上我们的java代码的。说直白点,就是我们怎么用java代码来对数据库进行操作。这里,在我的这个账号里边应该会有JDBC的连接,大家可以下载,不过这个需要钱,当然,小编也给大家提供了白嫖的方法:关注:旺哥学习便利店,回复“MySQL数据库5.0版本”,你就会白嫖成功了。
2. 驱动导包 你想要在java里边,使用MySQL数据库,你就必须先导入对应数据库的jar包,这里小编以MySQL5.5版本为例。
首先,我们需要创建一个文件夹,按照下图即可
Java小案例|Jdbc数据库的连接工具类
文章图片

其次,就是我们需要把我们导入的jar包,加入到我们的项目中
Java小案例|Jdbc数据库的连接工具类
文章图片

这样,我们就完成了,开始的第一步。
3. 注意事项 为什么,这里特别的把这个注意事项拿出来呢,因为我把加到第二部分末尾,大家可能不太能注意到,但是这个有很重要,它关乎到你,能不能成功完成第一步,下边大家注意看了:
你导入的一定是jar,不是zip的压缩包。如果你导入的是zip的压缩包,你就找不到Add as library这个选项。
一定注意!一定注意!一定注意!
4. 代码实现 这里给大家一个,JDBC连接的一个工具类吧。是我对连接数据库连接做了一个工具类,以后直接调用方法就行。
public class JdbcUtils { //可以把几个字符串定义成常量:用户名,密码,URL,驱动类 private static final String USER = "root"; private static final String PWD = "root"; private static final String URL = "jdbc:mysql://localhost:3306/db3"; private static final String DRIVER = "com.mysql.jdbc.Driver"; /** * 驱动的注册 */ static { try { Class.forName("DRIVER"); } catch (ClassNotFoundException e) { e.printStackTrace(); } }/** * 得到数据库的连接 * @return : 返回数据库的连接 * @throws SQLException : SQL的异常 */ public static Connection getConnection() throws SQLException { return DriverManager.getConnection(URL,USER,PWD); }/** * 关闭所有打开的资源 * @param connection : 连接的对象 * @param statement : 执行SQL语句的对象 * @throws SQLException */ public static void close(Connection connection,Statement statement) throws SQLException { try { assert statement != null; statement.close(); }catch (SQLException e) { e.printStackTrace(); }try { assert connection != null; connection.close(); }catch (SQLException e) { e.printStackTrace(); } }public static void close(Connection connection,Statement statement,ResultSet resultSet) throws SQLException { try { assert statement != null; statement.close(); }catch (SQLException e) { e.printStackTrace(); }try { assert resultSet != null; resultSet.close(); }catch (SQLException e) { e.printStackTrace(); }try { assert connection != null; connection.close(); }catch (SQLException e) { e.printStackTrace(); } } }

5. 总结 这里给大家总结一个,这就是一个工具类的书写,并没有mian()函数的执行,因为,哪一个实例来讲,这篇文章就太反锁了。再总结一下代码中的问题吧。
  1. 我使用了static代码块,这是是类再加载的时候,这里边的代码就会被执行。建议使用这样的写法
  2. 使用了assent 断言,这里的意思是,入伙这个连接对象不为空,就可以执行下边的代码,如果为空,就报异常,到catch中。
  3. 这里有一个不足就是关闭有点繁琐,可以简化以下,就是把三个参数的释放,放在两个参数的方法体内,不过这样的化,resultSet就不能使用断言了,可以换做if语句实现。
  4. 上边说的三个参数的方法,放在两个参数的方法体内,被调用,这里,我们只需要把resultSet的参数传递为null就可以了,这也是为什么,我们需要把assert断言改为if语句的原因。

    推荐阅读