JDBC学习总结

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JDBC学习总结相关的知识,希望对你有一定的参考价值。

     小菜鸟一枚,如果有什么错误的希望大家可以指出。谢谢!

什么是JDBC?
     JDBC(java Data Base Connective,java数据库连接(java程序可通过它连接上数据库)),由一些接口和类组成。是j2SE的一部分,由java.sql 和javax.sql包组成。
 
 
JDBC架构:
    通常java程序首先使用JDBC API来与JDBC Driver Manager交互,由JDBC Driver Manager载入指定的JDBC driver,以后就通过JDDBC API来存取数据库
 
     JDBC驱动程序管理器是:JDBC系结构的支柱,其主要作 用是把Java应用程序连接到正确的JDBC驱动程序上。可注册多个不同的数据库驱动。
 
      数据库驱动:不同数据库开发商(比如oracle mysql等)为了某一种开发语言环境(比如java)能够实现统一的数据库调用而开发的一个程序。作用: 将Java语言中对数据库的调用语言通过这个翻译翻译成各个种类的数据库自己的数据库语言

  技术分享

 
 连接数据库的步骤:
  •    导入驱动
  •    注册驱动(只做一次)
  •    建立连接(Connection)
  •   创建执行的SQL语句(statement)
  •   执行语句
  •   处理执行结果(ResultSet)
  •   释放资源
1、导入 JDBC 驱动:
     a. 选中工程,点击右键,选择properties
 
     b. 选择Java Build Path 在右边选择Libraries,点击Add External JARs...
技术分享

 

 c. 导入正确的驱动连接的包
  技术分享

d、选择Order and Export,勾选上我们刚刚导入进来的包,最后点击OK就可以

技术分享

具体代码:
          Base类:
package cn.itcast.jdbc;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
public class Base {
      /**
       * @param args
       * @throws Exception
       */
      public static void main(String[] args) throws Exception {
            template();
      }
      static void template() throws Exception {
            Connection conn = null;
            Statement st = null;
            ResultSet rs = null;
            try {
                  // 2.建立连接
                  conn = JdbcUtils.getConnection();
                  // conn = JdbcUtilsSing.getInstance().getConnection();
                  // 3.创建语句
                  st = conn.createStatement();
                  // 4.执行语句
                  rs = st.executeQuery("select * from user");
                  // 5.处理结果
                  while (rs.next()) {
                        // 参数中的1,2,3,4是指sql中的列索引
                        System.out.println(rs.getObject(1) + "\\t" + rs.getObject(2)
                                    + "\\t" + rs.getObject(3) + "\\t" + rs.getObject(4));
                  }
            } finally {
                  JdbcUtils.free(rs, st, conn);
            }
      }
}
 
  JdbcUtil类:
      
package cn.itcast.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
 public final class JdbcUtils {
      private static String url = "jdbc:mysql://localhost:3306/jdbc";
      private static String user = "root";
      private static String password = "Root";
      private JdbcUtils() {
      }
      static {
            try {
                  Class.forName("com.mysql.jdbc.Driver");
            } catch (ClassNotFoundException e) {
                  throw new ExceptionInInitializerError(e);
            }
      }
      public static Connection getConnection() throws SQLException {
            return DriverManager.getConnection(url, user, password);
      }
      public static void free(ResultSet rs, Statement st, Connection conn) {
            try {
                  if (rs != null)
                        rs.close();
            } catch (SQLException e) {
                  e.printStackTrace();
            } finally {
                  try {
                        if (st != null)
                              st.close();
                  } catch (SQLException e) {
                        e.printStackTrace();
                  } finally {
                        if (conn != null)
                              try {
                                    conn.close();
                              } catch (SQLException e) {
                                    e.printStackTrace();
                              }
                  }
            }
      }
}

以上是关于JDBC学习总结的主要内容,如果未能解决你的问题,请参考以下文章

线程学习知识点总结

mybatis学习总结

关于mysql驱动版本报错解决,Cause: com.mysql.jdbc.exceptions.jdbc4Unknown system variable ‘query_cache_size(代码片段

由浅到深学习JDBC二

JDBC学习总结

javaweb学习总结(三十六)——使用JDBC进行批处理