`
shawnshen
  • 浏览: 4979 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JDBC的学习总结

阅读更多

最近在学习JDBC,所以总结了一下,与大家相互交流,欢迎拍砖~

 

以MySQL数据库为例,建立连接如下:

 

Connection conn = null;
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/db_test", "root", "1234");
conn.close();
 

 

 

  • 采用Statement时,编码如下(注:此代码为总结的结果,不保证copy后能正常运行!):
Statement stmt = null;
//此处分为了三种情况
String strSQL1 = "CREATE TABLE SQL";
String strSQL2 = "INSERT/UPDATE/DELETE SQL";
String strSQL3 = "SELECT SQL";

stmt = conn.createStatement();

// 1. 执行建表语句时
stmt.execute(strSQL1);

// 2. 执行插入、更新、删除语句时
stmt.executeUpdate(strSQL2);

// 3. 执行查询语句时
ResultSet rs = stmt.executeQuery(strSQL3);
while(rs.next()){
        String col0 = rs.getString("COL0");
        String col1 = rs.getString("COL1");
        String col2 = rs.getString("COL2");
        System.out.println(col0 + "\t" + col1 + "\t" + col2);
}

stmt.close();

 

 

  • 采用PreparedStatement时,编码如下(注:此代码为总结的结果,不保证copy后能正常运行!):
PreparedStatement prepStmt = null;
// 此处分为了三种情况
String strSQL1 = "CREATE TABLE SQL";
String strSQL2 = "INSERT/UPDATE/DELETE ... (?,?,?) ... SQL";
String strSQL3 = "SELECT ... ? ... SQL";

// 1. 执行建表语句时
prepStmt = conn.prepareStatement(strSQL1);
prepStmt.executeUpdate();

// 2. 执行插入、更新、删除语句时
prepStmt = conn.prepareStatement(strSQL2);
prepStmt.setInt(1, "1001");
prepStmt.setString(2, "AngryBird");
prepStmt.setDate(3, "2012-7-8");
prepStmt.executeUpdate();

// 3. 执行查询语句时
prepStmt = conn.prepareStatement(strSQL3);
ResultSet rs = prepStmt.executeQuery();
while (rs.next()) {
        String col0 = rs.getString("COL0");
        String col1 = rs.getString("COL1");
        String col2 = rs.getString("COL2");
        System.out.println(col0 + "\t" + col1 + "\t" +col2);
}

prepStmt.close();

 

  
JDBC中的事务的处理:

JDBC中的事务默认是自动提交的,在执行insert语句和update语句,当update语句出错时,insert语句还能正常插入;当把setAutoCommit()设为false,update语句出错时,整个事务就会rollback,insert语句也就不能正常的插入。

 

PreparedStatement prepStmt1 = null;
PreparedStatement prepStmt2 = null;
String strSQL1 = "INSERT SQL";
String strSQL2 = "UPDATE SQL";

conn.setAutoCommit(false); // 开启事务

prepStmt1 = conn.prepareStatement(strSQL1);
prepStmt1.setInt(1, "1001");
prepStmt1.setString(2, "AngryBird");
prepStmt1.SetDate(3, "2012-7-8");
prepStmt1.executeUpdate();

prepStmt2 = conn.prepareStatement(strSQL2);
prepStmt2.setString(1, "UFO");
prepStmt2.setInt(2, "1001");
prepStmt2.executeUpdate();

conn.commit(); // 关闭事务
 

 

 

 

JDBC中与不同数据库连接的Driver和URL,如下表所示:

 

注:后面的圆括号中为各数据库所默认的端口号。

 

 

DB Driver & URL
Oracle

Driver: oracle.jdbc.driver.OracleDriver

URL: jdbc:oracle:thin:@<server_ip>:<port>:<dbname>  (port=1521)

MySQL

Driver: com.mysql.jdbc.Driver

URL: jdbc:mysql://<host_name>:<port>/<dbname>  (port=3306)

DB2

Driver: com.ibm.db2.jdbc.app.DB2Driver

UR: jdbc:db2://<host_name>:<port>/<dbname>  (port=5000)

SQL Server

Driver: com.microsoft.jdbc.sqlserver.SQLServerDriver

URL: jdbc:microsoft:sqlserver://<host_name>:<port>;DatabaseName=<dbname>  (port=1433)

 

 

 

分享到:
评论

相关推荐

    标日初级总结笔记JDBC学习总结笔记.pdf

    标日初级总结笔记JDBC学习总结笔记.pdf

    java——jdbc学习总结

    Java JDBC (Java Database Connectivity) 是Java编程语言中用于与各种数据库进行交互的一套标准API。JDBC 提供了一种统一的接口,使得开发者无需关心具体的数据库类型,就能够编写数据库访问代码,大大提高了代码的...

    JDBC学习笔记总结,可以看看

    "JDBC学习笔记总结" JDBC(Java Database Connectivity)是一种Java API,用于连接和操作关系数据库。下面是JDBC学习笔记的总结: 连接到数据库的方法 1. ODBC(Open Database Connectivity):是一个以C语言为...

    jdbc学习笔记(PDF格式)

    ### JDBC学习笔记知识点详解 #### 一、JDBC原理概述 **JDBC**(Java Database Connectivity)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC...

    jdbc学习笔记完美版

    JDBC(Java Database Connectivity)是Java...通过学习JDBC,开发者能够有效地在Java应用程序中集成数据库功能,实现数据的增删改查以及与存储过程的交互。理解和掌握这些知识对于成为一名合格的Java开发人员至关重要。

    JDBC学习资料 jdbc编程

    总结,JDBC是Java中用于数据库操作的重要工具,提供了统一的API来处理不同数据库的连接、SQL执行和结果处理。而事件模型则是GUI编程中处理用户交互的关键概念,两者都是Java开发中不可或缺的部分。

    JDBC学习文档

    ### JDBC学习文档知识点详解 #### 一、JDBC概述与基本概念 JDBC(Java Database Connectivity)是Java中用于操作数据库的一种标准API,它提供了一系列的接口和类,允许Java程序连接并操作各种类型的数据库系统。...

    JDBC Hibernate学习笔记

    ### JDBC与Hibernate学习笔记 #### 一、JDBC概述 **1.1 ODBC与JDBC的区别** - **ODBC(Open Database Connectivity)**: 开放式数据库连接是一种开放标准的应用程序接口(API),用于实现数据库应用程序与不同...

    JDBC学习资料

    这份“JDBC学习资料”涵盖了JDBC的基础知识,非常适合初学者深入理解和掌握。 首先,JDBC的核心组件包括驱动程序管理器、数据库驱动程序、连接(Connection)、Statement、PreparedStatement、CallableStatement...

    Jdbc学习小资料PPT

    **JDBC概述** JDBC(Java Database Connectivity)是Java编程语言与各种数据库之间进行交互的一组接口和类,它是Java标准版...通过学习JDBC,开发者可以编写出高效、健壮的数据访问代码,实现与各种数据库的无缝对接。

    JDBC笔记_JDBC学习笔记_

    在本篇JDBC学习笔记中,我们将深入探讨JDBC的基础知识、核心概念以及实际应用。 一、JDBC基础 1. JDBC驱动程序:JDBC驱动是连接Java应用程序和数据库之间的桥梁。根据实现方式,JDBC驱动分为四种类型:类型1(JDBC...

    jdbc问题集收藏总结

    ### JDBC问题集锦与解决方案 #### 一、ResultSet的理解与使用 **问题描述:** 在使用JDBC过程中,经常需要处理查询结果集`ResultSet`。`ResultSet`对象表示执行SQL语句后返回的结果集,它提供了对结果集中数据的...

    JDBC学习手册完整版

    ### JDBC学习手册知识点详解 #### 一、JDBC概述 - **定义与作用**:JDBC(Java Database Connectivity)是一种用于执行SQL语句的Java API,它可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口...

    Java JDBC 编程知识全面总结 一张图搞定!

    全面的 Java JDBC 编程学习知识总结 一张图搞定! 结构性强,便于记忆! 资源博客:https://blog.csdn.net/CodeYearn/article/details/89196038

    jdbc基础知识总结

    ### JDBC基础知识总结 #### 一、概述 JDBC(Java Database Connectivity)是一种标准的Java API,用于连接并操作各种类型的数据库。它从物理结构上说就是一套Java语言访问数据库的接口集合,本质上则是调用者...

    超经典的jdbc学习笔记

    总结,这份"超经典的JDBC学习笔记"全面覆盖了JDBC的基础知识、安全实践以及设计模式的应用。通过学习,开发者不仅可以掌握JDBC的基本用法,还能了解到如何在实际项目中安全、高效地使用数据库,提升系统安全性与性能...

    jdbc学习和帮助文档...

    ### JDBC学习和帮助文档知识点详解 #### 一、JDBC简介 JDBC(Java Database Connectivity)是一种用于执行SQL语句的Java API,它可以为多种关系型数据库提供统一访问,这使得Java开发人员能够以一种数据库无关的...

    JDBC学习笔记第十一篇

    **JDBC学习笔记第十一篇** 在Java开发中,JDBC(Java Database Connectivity)是一个重要的接口,它允许Java程序与各种数据库进行交互。本篇学习笔记将深入探讨JDBC的使用,特别是基于JDBC v2.0版本的工具类`...

Global site tag (gtag.js) - Google Analytics