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();

}

Published At
Categories with Web编程
Tagged with
comments powered by Disqus