爱心技术专栏专题

Servlet中jdbc应用高级篇之一

摘录:java应用 来源:java应用 加入时间:2007年04月11日
摘要:
Servlet中jdbc应用高级篇之一

JDBC使用数据库URL来说明数据库驱动程序。数据库URL类似于通用的URL,但SUN 在定义时作了一点简化,其语法如下: 

Jdbc::[node]/[database] 

  其中子协议(subprotocal)定义驱动程序类型,node提供网络数据库的位置和端口号,后面跟可选的参数。例如:&nbs;…

Servlet中jdbc应用高级篇之一

站点:爱心种子小博士 关键字:Servlet中jdbc应用高级篇之一

Servlet中jdbc应用高级篇之一
JDBC使用数据库URL来说明数据库驱动程序。数据库URL类似于通用的URL,但SUN 在定义时作了一点简化,其语法如下: 

Jdbc::[node]/[database] 

  其中子协议(subprotocal)定义驱动程序类型,node提供网络数据库的位置和端口号,后面跟可选的参数。例如: 

String url=jdbc:inetdae:myserver:1433?language=us-english&sql7=true 

  表示采用inetdae驱动程序连接1433端口上的myserver数据库服务器,选择语言为美国英语,数据库的版本是mssql server 7.0。 

  java应用通过指定DriverManager装入一个驱动程序类。语法如下: 

Class.forName(); 

或 

Class.forName().newInstance(); 

  然后,DriverManager创建一个特定的连接: 

Connection connection=DriverManager.getConnection(url,login,password); 

  Connection接口通过指定数据库位置,登录名和密码连接数据库。Connection接口创建一个Statement实 

例执行需要的查询: 

Statement stmt=connection.createStatement(); 

  Statement具有各种方法(API),如executeQuery,execute等可以返回查询的结果集。结果集是一个ResultSet对象。具体的可以通过jdbc开发文档查看。可以sun的站点上下载 

下面例子来说明: 

import java.sql.*; // 输入JDBC package 

String url = "jdbc:inetdae:myserver:1433";// 主机名和端口 

String login = "user";// 登录名 

String password = "";// 密码 

try { 

  DriverManager.setLogStream(System.out); file&://为显示一些的信息打开一个流 

  file&://调用驱动程序,其名字为com.inet.tds.TdsDriver 

  file&://Class.forName("com.inet.tds.TdsDriver"); 

  file&://设置超时 

  DriverManager.setLoginTimeout(10); 

  file&://打开一个连接 

  Connection connection = DriverManager.getConnection(url,login,password); 

  file&://得到数据库驱动程序版本 

   DatabaseMetaData conMD = connection.getMetaData(); 

   System.out.println("Driver Name:\t" + conMD.getDriverName()); 

   System.out.println("Driver Version:\t" + conMD.getDriverVersion()); 

  file&://选择数据库 
  connection.setCatalog( "MyDatabase"); 

  file&://创建Statement 


  Statement st = connection.createStatement(); 

  file&://执行查询 

  ResultSet rs = st.executeQuery("SELECT * FROM mytable"); 

  file&://取得结果,输出到屏幕 

  while (rs.next()){ 

     for(int j=1; j<=rs.getMetaData().getColumnCount(); j++){ 

     System.out.print( rs.getObject(j)+"\t"); 

     } 

   System.out.println(); 

  } 

  file&://关闭对象 

  st.close(); 

    connection.close(); 

  } catch(Exception e) { 

    e.printStackTrace(); 

  } 

转载:转载请保留本信息,本文来自http://www.51dibs.com/lp07/la/a6/l_a_9fabb1dfb7f2c41f.html