Welcome

首页 / 网页编程 / JSP / Servlet中jdbc应用高级篇(一)

Servlet中jdbc应用高级篇(一)2007-05-30JDBC使用数据库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: " + conMD.getDriverName());

System.out.println("Driver Version: " + 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)+" ");

}

System.out.println();

}

file://关闭对象

st.close();

connection.close();

} catch(Exception e) {

e.printStackTrace();

}