首页 > 代码库 > J2EE(二)— JDBC

J2EE(二)— JDBC

JDBC

  JDBC (Java Data Base ConnectivityJava数据库连接)是一种用于执行SQL语句的Java API

看到Java数据库连接,只要是从vb.NET学过来的,肯定会想到ODBC(开放式数据库连接),JDBCODBC都是用来连接数据库的启动程序,都用于应用程序和数据库的交互。

 

结构模型

JDBC


  根据Java的发展,最初时没有Java语言的数据库应用程序,编程人员是不得不用ODBCC语言),Java的特点相比大家都知道,跨平台,面向对象,然而ODBC对这些是在的不给力,以Java语言为接口的数据库应用程序显得尤为重要,JDBC应时而出。

通过JDBC,可以方便的将SQL语句传送给任何一种数据库,并且跨平台的实现。



连接数据库的步骤:

1、注册驱动 (只做一次)

准确地说JDBC是一套协议,也就是由Sun定义一组接口,由数据库厂商来实现(以驱动程序形式提供),并规定了JAVA开发人员访问数据库所使用的方法的用规范。

由此可见使用JDBC是首先要注册驱动。

2、建立连接(Connection)

Connection连接是通过DriverManager的静态方法getConnection()来得到的,这个方法的实质是把参数传到实际的驱动中的connect()方法中来获得数据库连接的。

3、创建执行SQL的语句(Statement)

向数据库发送要执行的SQL语句

4、执行语句

使用execute、executeQuery和executeUpdate方法执行update和insert、delete等sql语句

5、处理执行结果(ResultSet)

ResultSet对象,是通过执行语句生成的数据库结果集。

6、释放资源

关闭Statement,关闭Connection,这个大家都明白。

 

这个过程感觉很熟悉,就像ADO.NET。再来看代码实现:

<span style="font-size:18px;">	Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
	                 //加载数据库引擎,返回给定字符串名的类
	String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=test";
	                 //test为你的数据库的名称
	String user="用户名";
	String password="密码";
	
	Connection conn=DriverManager.getConnection(url,user,password);
	                 //连接数据库对象
	Statement stmt=conn.createStatement();
	                //创建SQL命令对象
	
	
	String query="";  //创建表SQL语句
	stmt.executeUpdate(query);//执行SQL命令对象
	
	String a="INSERT/DELETE.... INTO/FROM “表名” VALUES(....,...)";
	....
	....
	....
	stmt.executeUpdate(a);//执行SQL命令对象
	
	//读取数据
	ResultSet rs=stmt.executeQuery("SELECT * FROM “表名”");
	//循环输出每一条记录    rs最初指向第一条记录的前面
	while(rs.next){
	    
	}
	
	//最后关闭连接
	stmt.close();
	con.close();
</span>


看完代码感觉更熟悉,除了注册驱动在ADO.NET中没有,建立连接,创建SQL,处理结果,关闭连接,其实都一样。


小结

JDBCSun定义了接口,数据库厂商提供了驱动,给了开发人员一个调用规范,只管去实现就成。对于开发人员,JDBC的使用简单,也迎合了JAVA的特点。