`

java JDBC

 
阅读更多
分为6个步骤
1.
load the driver

(1)Class.forName()|Class.forName().newlnstance()|new DriverName()
(2)实例化时自动向DriverManager注册,不需要显示调用DriverManager.registerDriver

2.
Connect to the DataBase
  DriverManager.getConnection()

3.

Excute the SQL
  (1)connection.CreateStatement()

   (2)Statement.excuteQuery()

   (3)Statement.executeUpdate()

4.

Retrieve the result data

   循环取得结果 while(rs.next())

5.

show the result data
   将数据库中的各种类型转换为java中的类型(getXXX)方法

6.

close

   close the resultset / close the  statement /close the connection



实际例子

Java代码 复制代码 收藏代码
  1.   
  2. package DB;   
  3.   
  4. import java.sql.*;   
  5.   
  6.   
  7.   
  8. class  Jdbc   
  9. {   
  10.     public static void main(String[] args)throws Exception   
  11.     {   
  12.            
  13.         //只有下面2句话就可以连接到数据库中   
  14.         Class.forName("com.mysql.jdbc.Driver");      
  15.         Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/test""root""1234");    
  16.            
  17.            
  18.            
  19.         //Class.forName("com.mysql.jdbc.Driver");      
  20.         //Connection conn=(Connection) getConnection("jdbc:mysql://localhost:3306/drp", "root", "root");   
  21.            
  22.   
  23.   
  24.         //Class.forName("oracal.jdbc.driver.OracalDriver");   
  25.         //new oracal.jdbc.driver.OracalDriver();   
  26.         //Connection conn=DriverManager.getConnection"jdbc:oracal:thin:@localhost:1521:SXT"."scott","tiger"   
  27.            
  28.         //jdbc.driverClassName=com.mysql.jdbc.Driver;   
  29.         //jdbc.url=jdbc:mysql:localhost:3306 /test?useUnicode=true&characterEncoding=utf8;   
  30.     }   
  31. }  
package DB;

import java.sql.*;



class  Jdbc
{
	public static void main(String[] args)throws Exception
	{
		
		//只有下面2句话就可以连接到数据库中
		Class.forName("com.mysql.jdbc.Driver");   
		Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "1234"); 
		
		
		
		//Class.forName("com.mysql.jdbc.Driver");   
		//Connection conn=(Connection) getConnection("jdbc:mysql://localhost:3306/drp", "root", "root");
		


		//Class.forName("oracal.jdbc.driver.OracalDriver");
		//new oracal.jdbc.driver.OracalDriver();
		//Connection conn=DriverManager.getConnection"jdbc:oracal:thin:@localhost:1521:SXT"."scott","tiger"
		
		//jdbc.driverClassName=com.mysql.jdbc.Driver;
		//jdbc.url=jdbc:mysql:localhost:3306 /test?useUnicode=true&characterEncoding=utf8;
	}
}


还有另外的一个用try catch 的方法


下面就实际去操作一下
首先把mysql驱动mysql-connector-java-3.1.10-bin.jar 或者其它版本的驱动copy到WebRoot 下面的WEB-INF下面的lib里面

Java代码 复制代码 收藏代码
  1. package db;   
  2.   
  3. //一定要注意类名字要相同!!   
  4.   
  5.   
  6. import java.sql.*;   
  7.   
  8. class  Jdbc   
  9. {   
  10.     public static void main(String[] args)throws Exception   
  11.     {   
  12.            
  13.            
  14.         Class.forName("com.mysql.jdbc.Driver");      
  15.         Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/test""root""1234");    
  16.         System.out.print("ok");//如果连接成功显示ok   
  17.     }   
  18. }  
package db;

//一定要注意类名字要相同!!


import java.sql.*;

class  Jdbc
{
	public static void main(String[] args)throws Exception
	{
		
		
		Class.forName("com.mysql.jdbc.Driver");   
		Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "1234"); 
		System.out.print("ok");//如果连接成功显示ok
	}
}


然后接着看下面的升级版
Java代码 复制代码 收藏代码
  1. package db;   
  2.   
  3. import java.sql.*;   
  4.   
  5. import com.sun.corba.se.spi.orbutil.fsm.Guard.Result;   
  6.   
  7. class Jdbc2 {   
  8.     public static void main(String[] args) throws Exception {   
  9.   
  10.         //1.先new 一个driver 然后向managerDriver注册   
  11.         Class.forName("com.mysql.jdbc.Driver");   
  12.         //2.通过DriverManager.getConnection传递个方法,严格的说是jdbc的url   
  13.         Connection conn = DriverManager.getConnection(   
  14.                 "jdbc:mysql://localhost:3306/test""root""1234");   
  15.         //3.创建个statement对象,执行sql语句   
  16.         Statement stmt = conn.createStatement();   
  17.         ResultSet rs = stmt.executeQuery("select * from test.admin");   
  18.         //4.取得结果集 5.对其进行便利   
  19.         while (rs.next()) {   
  20.             System.out.println(rs.getString("username"));   
  21.             System.out.println(rs.getInt("id"));   
  22.         }   
  23.         //6.关闭(要遵循后执行的先闭,先执行的后闭的原则)   
  24.         rs.close();   
  25.         stmt.close();   
  26.         conn.close();   
  27.   
  28.     }   
  29. }   
  30.   
  31. /**  
  32.  * 此例子需要注意的是:  
  33.  * 1.驱动是否在lib文件夹下面。  
  34.  * 2.数据库里面的库名以及表是否存在  
  35.  * 3."jdbc:mysql://localhost:3306/test", "root", "1234");  
  36.  * 分别对应的是地址、端口、库名、数据库的管理员名字、管理员密码。  
  37.  * 4."select * from test.admin" sql语句建议一定写的时候用 库名.表名。  
  38.  */  
  39. /*  
  40.  
  41.  以上是jdbc 一个简单的例子,了解连接jdbc 的步骤。  
  42.  
  43.  这段代码的统一出现的问题是在执行System.out.println(rs.getString("name"));的时候  
  44.  会出现exception,这样的话后面的close就不再被执行,占用缓存,最后导致服务器死机  
  45.  (河北电信视频点击系统)改进的代码请看TESTHdbc3.java  
  46.  
  47.  
  48.  */  
  49.   
  50. //Class.forName("com.mysql.jdbc.Driver");      
  51. //Connection conn=(Connection) getConnection("jdbc:mysql://localhost:3306/drp", "root", "root");   
  52.   
  53. //Class.forName("oracal.jdbc.driver.OracalDriver");   
  54. //new oracal.jdbc.driver.OracalDriver();   
  55. //Connection conn=DriverManager.getConnection"jdbc:oracal:thin:@localhost:1521:SXT"."scott","tiger"   
  56. //jdbc.driverClassName=com.mysql.jdbc.Driver;   
  57. //jdbc.url=jdbc:mysql:localhost:3306 /test?useUnicode=true&characterEncoding=utf8;   
  58. /*   
  59. 以上是jdbc 一个简单的例子,了解连接jdbc 的步骤。   
  60.   
  61. 这段代码的统一出现的问题是在执行System.out.println(rs.getString("name"));的时候会出现exception,这样的话后面的close就不再被执行,占用缓存,最后导致服务器死机(河北电信视频点击系统)改进的代码请看TESTHdbc3.java   
  62.   
  63.   
  64.            
  65.         //Class.forName("com.mysql.jdbc.Driver");      
  66.         //Connection conn=(Connection) getConnection("jdbc:mysql://localhost:3306/drp", "root", "root");   
  67.            
  68.   
  69.   
  70.         //Class.forName("oracal.jdbc.driver.OracalDriver");   
  71.         //new oracal.jdbc.driver.OracalDriver();   
  72.         //Connection conn=DriverManager.getConnection"jdbc:oracal:thin:@localhost:1521:SXT"."scott","tiger"   
  73.            
  74.         //jdbc.driverClassName=com.mysql.jdbc.Driver;   
  75.         //jdbc.url=jdbc:mysql:localhost:3306 /test?useUnicode=true&characterEncoding=utf8;  
package db;

import java.sql.*;

import com.sun.corba.se.spi.orbutil.fsm.Guard.Result;

class Jdbc2 {
	public static void main(String[] args) throws Exception {

		//1.先new 一个driver 然后向managerDriver注册
		Class.forName("com.mysql.jdbc.Driver");
		//2.通过DriverManager.getConnection传递个方法,严格的说是jdbc的url
		Connection conn = DriverManager.getConnection(
				"jdbc:mysql://localhost:3306/test", "root", "1234");
		//3.创建个statement对象,执行sql语句
		Statement stmt = conn.createStatement();
		ResultSet rs = stmt.executeQuery("select * from test.admin");
		//4.取得结果集 5.对其进行便利
		while (rs.next()) {
			System.out.println(rs.getString("username"));
			System.out.println(rs.getInt("id"));
		}
		//6.关闭(要遵循后执行的先闭,先执行的后闭的原则)
		rs.close();
		stmt.close();
		conn.close();

	}
}

/**
 * 此例子需要注意的是:
 * 1.驱动是否在lib文件夹下面。
 * 2.数据库里面的库名以及表是否存在
 * 3."jdbc:mysql://localhost:3306/test", "root", "1234");
 * 分别对应的是地址、端口、库名、数据库的管理员名字、管理员密码。
 * 4."select * from test.admin" sql语句建议一定写的时候用 库名.表名。
 */
/*

 以上是jdbc 一个简单的例子,了解连接jdbc 的步骤。

 这段代码的统一出现的问题是在执行System.out.println(rs.getString("name"));的时候
 会出现exception,这样的话后面的close就不再被执行,占用缓存,最后导致服务器死机
 (河北电信视频点击系统)改进的代码请看TESTHdbc3.java


 */

//Class.forName("com.mysql.jdbc.Driver");   
//Connection conn=(Connection) getConnection("jdbc:mysql://localhost:3306/drp", "root", "root");

//Class.forName("oracal.jdbc.driver.OracalDriver");
//new oracal.jdbc.driver.OracalDriver();
//Connection conn=DriverManager.getConnection"jdbc:oracal:thin:@localhost:1521:SXT"."scott","tiger"
//jdbc.driverClassName=com.mysql.jdbc.Driver;
//jdbc.url=jdbc:mysql:localhost:3306 /test?useUnicode=true&characterEncoding=utf8;
/*
以上是jdbc 一个简单的例子,了解连接jdbc 的步骤。

这段代码的统一出现的问题是在执行System.out.println(rs.getString("name"));的时候会出现exception,这样的话后面的close就不再被执行,占用缓存,最后导致服务器死机(河北电信视频点击系统)改进的代码请看TESTHdbc3.java


		
		//Class.forName("com.mysql.jdbc.Driver");   
		//Connection conn=(Connection) getConnection("jdbc:mysql://localhost:3306/drp", "root", "root");
		


		//Class.forName("oracal.jdbc.driver.OracalDriver");
		//new oracal.jdbc.driver.OracalDriver();
		//Connection conn=DriverManager.getConnection"jdbc:oracal:thin:@localhost:1521:SXT"."scott","tiger"
		
		//jdbc.driverClassName=com.mysql.jdbc.Driver;
		//jdbc.url=jdbc:mysql:localhost:3306 /test?useUnicode=true&characterEncoding=utf8;


最后让我们看个成熟版
Java代码 复制代码 收藏代码
  1. package db;   
  2.   
  3. import java.sql.*;   
  4.   
  5. class Jdbc3 {   
  6.     public static void main(String[] args) {   
  7.         try {   
  8.   
  9.             Class.forName("com.mysql.jdbc.Driver");   
  10.   
  11.             Connection conn = DriverManager.getConnection(   
  12.                     "jdbc:mysql://localhost:3306/test""root""1234");   
  13.   
  14.             Statement stmt = conn.createStatement();   
  15.             ResultSet rs = stmt.executeQuery("select * from test.admin");   
  16.   
  17.             while (rs.next()) {   
  18.                 System.out.println(rs.getString("username"));   
  19.                 System.out.println(rs.getInt("id"));   
  20.             }   
  21.         } catch (ClassNotFoundException e) {   
  22.             e.printStackTrace();   
  23.         } catch(SQLException e){   
  24.             e.printStackTrace();}   
  25.         }   
  26.     finally{   
  27.         rs.close();   
  28.         stmt.close();   
  29.         conn.close();   
  30.     }   
  31.        
  32. }  
分享到:
评论

相关推荐

    java jdbc 需要包

    Java JDBC(Java Database Connectivity)是Java编程语言中用于与各种数据库进行交互的一组接口和类。它提供了一种标准化的方法,让程序员可以使用SQL语句访问数据库,而无需关心具体的数据库实现细节。在Java应用...

    Java JDBC学生数据管理系统

    Java JDBC学生数据管理系统是一个利用Java编程语言和JDBC(Java Database Connectivity)技术设计的应用,用于高效管理和操作学生数据。这个系统提供了用户友好的界面,使得用户可以方便地执行SQL(Structured Query...

    jdbc.zip_java jdbc_java+jdbc_jdbc_jdbc Java_zip

    Java JDBC(Java Database Connectivity)是Java编程语言中用于与各种关系数据库进行交互的一组接口和类。它作为标准API,允许开发人员通过编写Java代码来访问和操作数据库,无需了解数据库特定的SQL语法或者驱动...

    Java jdbc

    Java JDBC(Java Database Connectivity)是Java编程语言中用于与各种关系数据库进行交互的一组标准API。JDBC使得Java开发者能够编写可移植的数据库应用程序,无需针对不同数据库系统编写不同的代码。JDBC的核心是一...

    java jdbc连接sqlserver所需要的jar包

    Java JDBC(Java Database Connectivity)是Java语言中用于与数据库交互的一种技术,它为开发者提供了一种标准的方法来访问各种类型的数据库。在Java中连接SQL Server数据库时,你需要一个特定的驱动程序,通常是一...

    JAVA JDBC MYSQL连接源代码

    Java JDBC (Java Database Connectivity) 是Java编程语言中用于与各种数据库进行交互的一组接口和类。它是Java标准的一部分,允许开发者在Java程序中执行SQL语句,实现对数据库的读写操作。本示例主要涉及使用Java ...

    javajdbc

    Java JDBC(Java Database Connectivity)是Java编程语言中用于与各种数据库进行交互的一组接口和类。它是Java标准版(Java SE)的一部分,允许Java开发者执行SQL语句并处理结果。在深入探讨Java JDBC之前,先要理解...

    完美的java jdbc连接池实例

    Java JDBC 连接池是Java开发中非常关键的一部分,它能有效地管理数据库连接,提高应用程序的性能和效率。本实例提供了完美的Java JDBC连接池配置,适用于Oracle、MySQL和SQL Server等主流数据库,允许开发者轻松地在...

    JAVA JDBC教程.zip_zip怎么打开

    **JAVA JDBC教程** Java JDBC(Java Database Connectivity)是Java平台中的一个标准API,它允许Java应用程序连接到各种类型的数据库,实现数据的存取和处理。JDBC为开发者提供了一种统一的方式来访问不同的数据库...

    javaJDBC编程.ppt

    javaJDBC编程.pptjavaJDBC编程.pptjavaJDBC编程.pptjavaJDBC编程.pptjavaJDBC编程.pptjavaJDBC编程.pptjavaJDBC编程.pptjavaJDBC编程.pptjavaJDBC编程.pptjavaJDBC编程.pptjavaJDBC编程.ppt

    java jdbc odbc 桥连接包

    java jdbc odbc 桥连接包 如何实现JDBC-ODBC桥连接到Access

    最全的javaJDBC--BaseDao

    最全的javaJDBC技术的BaseDao,相当于框架封装了,引用之后直接调用其中的方法传递参数以及sql语句就可以使用了。

    jdbc-oracle.rar_JDBC ORACLE_java JDBC orac_java jdbc oracle_jdbc

    在Java编程语言中,JDBC(Java Database Connectivity)是一个用于与各种数据库进行交互的标准接口。JDBC提供了一套规范,使得Java程序员可以使用统一的方法来访问数据库,包括Oracle数据库。Oracle是世界上最流行的...

    java jdbc连接Oracle的小例子

    Java JDBC(Java Database Connectivity)是Java语言中用来规范客户端程序如何访问数据库的应用程序接口,它提供了标准的API,使得Java程序员能够使用SQL语句来访问数据库。本篇将通过一个小型示例,详细介绍如何...

    mysql8.0,java jdbc驱动.zip

    Java JDBC(Java Database Connectivity)驱动则是Java程序与各种数据库进行交互的标准接口,使得Java开发者能够方便地访问和操作数据库。在本压缩包中,我们可能找到了用于连接MySQL 8.0的Java JDBC驱动,这将帮助...

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

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

    sqlite jdbc jar java jdbc 链接 sqlite sqlite-jdbc-3.8.11.1.jar

    SQLite JDBC 是一个开源的 Java 驱动程序,允许 Java 应用程序通过 JDBC API 连接到 SQLite 数据库。SQLite 是一个轻量级、自包含的数据库引擎,无需单独的服务器进程,非常适合嵌入式应用或者对小型项目的数据存储...

    Java JDBC驱动大全

    Java JDBC(Java Database Connectivity)是Java平台中用于与数据库交互的一组接口和类,它使得开发者可以使用标准的Java API来访问各种类型的数据库系统。在Java应用中,JDBC驱动扮演着桥梁的角色,将Java程序与...

    Java JDBC学习

    Java JDBC 代码,可以借鉴一下,jdbc基本是这个模式

    java JDBC连接ACCESS驱动

    Java JDBC(Java Database Connectivity)是Java平台中用于与各种数据库进行交互的标准接口。它允许Java应用程序通过编写Java代码来访问和处理存储在数据库中的数据。在这个主题中,我们将深入探讨如何使用JDBC来...

Global site tag (gtag.js) - Google Analytics