/*
 *   编写快速 入门的jdbc 程序 :
 *  
 *    1. 先导入 具体的驱动jar包
 *    2. 编写一个类 , 写jdbc 的程序
 *
 *  具体的编写 java类的 代码的步骤:
 *   
 *   第一步: 注册驱动 --- 告诉 具体的要操作的是那个 数据库
 *   第二步: 建立与 数据库的链接---Connection
 *   第三步: 获得可以发送  sql 语句的 statement 对象
 *   第四步: 执行sql 语句, 拿到 结果集对象
 *   第五步: 解析结果集中的数据
 *   第六步: 释放资源
 *
 */

@Test
 public void test2() {
  
  Connection conn = null;
  Statement stmt = null;
  ResultSet rs = null;
  try {
   // 第一步: 注册驱动
//   DriverManager.registerDriver(new Driver());
   
   //这里 本来是 加载字节码, 但是 加载字节码的 时候 又 会执行 这个Driver类的静态代码快, 而静态代码块 有完成了驱动的注册, 所以
   // 这行代码 就是那么巧 ...
   Class.forName("com.mysql.jdbc.Driver");
   
   // 第二步: 建立与 数据库的链接
   //  http://localhost:8080/day15/1.html
   
   //通常 可以简写 为 :  jdbc:mysql:///day15_jdbc
   conn = DriverManager.getConnection("jdbc:mysql:///day15_jdbc", "root", "abc");
   
   
   
   // 第三步:获得可以发送  sql 语句的 statement 对象
   
   stmt = conn.createStatement();
   
   // 第四步: 执行sql 语句, 拿到 结果集对象
   // rs , 就封装了这个查询的结果
   rs = stmt.executeQuery("select * from users");
   
   // 第五步: 解析结果集中的数据
   while(rs.next()){
    
    int id = rs.getInt("id");
    String username = rs.getString("username");
    String password = rs.getString("password");
    String nickname = rs.getString("nickname");
    
    System.out.println("id: " + id+",username : " + username+", password : " + password +", nickname : " + nickname);
   }
   
   
  } catch (Exception e) {
   e.printStackTrace();
  }finally{
//   第六步: 释放资源  --- 由于 数据库 链接非常的稀缺, 所以 在 操作完成后,记得释放资源 , 都会放到 finally 代码块 中
   
   if(rs!=null){
    try {
     rs.close();
    } catch (SQLException e) {
     e.printStackTrace();
    }
    rs =null;
   }
   
   if(stmt!=null){
    try {
     stmt.close();
    } catch (SQLException e) {
     e.printStackTrace();
    }
    stmt=null;
   }
   
   if(conn!=null){
    try {
     conn.close();
    } catch (SQLException e) {
     e.printStackTrace();
    }
    conn=null;
   }
   
  }
 }

【数据库】java链接jdbc 释放资源的更多相关文章

  1. java链接JDBC中的?问题

    String sql = "select * from student where name= ?"; PreparedStatement pst = conn.prepareSt ...

  2. java 链接jdbc

    import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sq ...

  3. 写给小白的JAVA链接MySQL数据库的步骤(JDBC):

    作为复习总结的笔记,我罗列了几个jdbc步骤,后边举个简单的例子,其中的try块请读者自行处理. /* * 1.下载驱动包:com.mysql.jdbc.Driver;网上很多下载资源,自己找度娘,此 ...

  4. Java数据库基础(JDBC)

    JDBC(Java Data Base Connectivity):SUN公司为了简化统一对数据库的操作,定义了一套Java操作数据库的规范,称之为JDBC: 这样应用程序就不需要关注数据库底层的详细 ...

  5. ava基础MySQL存储过程 Java基础 JDBC连接MySQL数据库

    1.MySQL存储过程   1.1.什么是存储过程 带有逻辑的sql语句:带有流程控制语句(if  while)等等 的sql语句   1.2.存储过程的特点 1)执行效率非常快,存储过程是数据库的服 ...

  6. JAVA使用JDBC技术操作SqlServer数据库执行存储过程

    Java使用JDBC技术操作SqlServer数据库执行存储过程: 1.新建SQLSERVER数据库:java_conn_test 2.新建表:tb_User 3.分别新建三个存储过程: 1>带 ...

  7. Java数据库操作(JDBC)

    JDBC Java数据库连接(Java DataBase Connectivity,JDBC)用于在Java程序中实现数据库操作功能,它提供了执行SQL语句.访问各种数据库的方法,并为各种不同的数据库 ...

  8. java链接数据库--Mysql

    /************************************************************************* > File Name: Mysql.jav ...

  9. Java之JDBC操作数据库

    DBC JDBC就是一套接口,真正执行的是jar包里得实现类,通过泛型对象来执行实现类里的方法. 步骤: ###1.导入驱动jar包到工程中 ###2.编写代码注册驱动,我们要让程序知道用的是哪个驱动 ...

随机推荐

  1. Oracle数据库学习(四):学习中的遇到的问题

    一.xhost图形化界面安装问题 问题1:运行xhost +命令,出现命令没有找到错误 原因:Linux系统没有安装xhost图形化包. 解决办法:安装xhost图形化包,命令如下: yum what ...

  2. mariadb配置主从同步遇到的问题

    一:ERROR: No query specified 解决方案: \G后面不能再加分号;,因为\G在功能上等同于;,如果加了分号,那么就是;;(2个分号),SQL语法错误 二:主从同步不成功 Sla ...

  3. VS 代码自动对齐快捷键

    全部代码代码自动对齐快捷键为 Ctrl + a(按后可松松手) + k(按后可松松手) + f

  4. linux ln 命令,相当于windows快捷方式

    ln -s 源文件 目标文件. ln -s  **  **,它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间, 硬链接ln ** **,没有参数-s, 它会在你选定的位置上生成一个和源文件大 ...

  5. springboot: mybatis的使用

    第一步:引入mybatis依赖 <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifa ...

  6. 第3章—高级装配—条件化的Bean

    条件化的Bean 通过活动的profile,我们可以获得不同的Bean.Spring 4提供了一个更通用的基于条件的Bean的创建方式,即使用@Conditional注解. @Conditional根 ...

  7. 四大组件之Activity——生命周期

    1.完整的Activity生命周期 包括onCreate() -> onStart() -> onResume() -> onPause() -> onStop -> o ...

  8. django显示SQL语句

    django显示SQL语句 有时候我们使用模型查询数据,但是并不知道具体执行的SQL语句到底对不对.那么可以通过下面的方法打印出具体执行的SQL语句.这样有助于调试: queryset = MyMod ...

  9. WebLogic 数据源密码加密

    先启动域:

  10. Spring发送基于freemarker模板的邮件

    在项目开发过程中,我们经常会遇到需要发送邮件的场景,比如:用户验证邮箱的时候,有活动通知或者提醒通知的时候……有些时候我们可能只需要发送一些简单文本内容即可,但是大多数情况下我们更希望邮件的内容是丰富 ...