gzyfj

Java数据库编程

      JDBC是java中提供的一套数据库编程API,它定义了一套用来访问数据库的标准Java类库(位于java.sql和javax.sql包中)。通过JDBC,我们可以用java编写程序,实现与特定的数据库进行连接,向数据库发送SQL语句,实现对数据库的特定操作,并对数据库返回的结果进行处理。

      JDBC编程步骤:

      步骤一:根据应用程序所用的数据库,选择JDBC驱动程序类型;

      步骤二:连接到数据库,得到Connection对象;

      步骤三:通过Connection创建Statement对象;

      步骤四:使用Statement对象提交SQL语句;

      步骤五:操作结果集;

      步骤六:回收数据库资源。

      JDBC驱动程序分为四个类型:

      JDBC-ODBC Bridge: JDBC-ODBC桥 由SUN公司提供通用的驱动,能访问各种数据库,但效率极低。

      Native-API partly-Java driver: 本地库Java驱动程序 执行效率高,客户端必须安装本地驱动,维护不方便。

      net-protocal all-Java driver(JDBC Proxy) 网络协议纯Java驱动程序(通用) 客户端不必安装本地库,使用方便,但性能相对较低。

      native-protocal all-Java driver: 本地协议完全Java驱动程序 将JDBC调用转化为特定数据库的网络协议,效率很高。

      加载驱动,通过调用Class类的静态方法forName()显式地加载驱动:例如:

     

Class.forName(驱动程序类);

下面我们来看一段代码,以便我们了解如何去建立数据库连接:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

/**
 * JDBC测试
 * 
 * @author Administrator
 *
 */
public class JDBCDemo3 {

    public static void main(String[] args) {
        Connection conn = null; // 连接对象
        Statement stmt = null; // Statement对象

        /* 加载驱动 */
        try {
            Class.forName("com.mysql.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
        /* 创建Connection对象 */
        // 连接字符串
        String url = "jdbc:mysql://localhost:3306/jdbc";
        // 用户名
        String user = "root";
        // 密码
        String password = "123456";
        try {
            // 创建连接
            conn = DriverManager.getConnection(url, user, password);
        } catch (SQLException e) {
            e.printStackTrace();
        }
    
     /* 执行的是添加多条数据到数据库中去 */
try { stmt = conn.createStatement(); stmt.addBatch("INSERT INTO users VALUES(5, \'tom1\', \'000000\')"); stmt.addBatch("INSERT INTO users VALUES(6, \'tom2\', \'000000\')"); stmt.addBatch("INSERT INTO users VALUES(7, \'tom3\', \'789000\')"); stmt.addBatch("INSERT INTO users VALUES(8, \'tom4\', \'456000\')"); stmt.addBatch("INSERT INTO users VALUES(9, \'tom5\', \'123\')"); stmt.executeBatch(); } catch (SQLException e1) { e1.printStackTrace(); } /* 释放资源:必做 */ try { if (stmt != null) stmt.close(); } catch (SQLException e) { e.printStackTrace(); } finally { if (conn != null) try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } } } }

 

发表于 2015-05-10 15:20  IT.情殇  阅读(934)  评论(1编辑  收藏  举报
 

分类:

技术点:

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-02-10
  • 2021-12-22
  • 2021-06-28
  • 2021-12-23
  • 2021-10-21
猜你喜欢
  • 2021-11-29
  • 2022-02-07
  • 2021-04-24
  • 2022-12-23
  • 2021-06-20
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案