以前一直在JBulider2005环境下手动加载jdbc。现在改用eclipse了,可不知道怎么手动加载,jdbc驱动我有。请问那位大虾帮忙给指点下。
解决方案 »
- 我想实现经过n年之后本息和是原来的金额的2倍,可是我的程序无法的到正确的结果,求指教!
- jComboBox怎么设置为不可用?
- 请问这个这个程序建一个文件,并向文件中写入数据有问题吗?
- 关于JAVA编程思想一书的几个问题@
- 怎样建目录
- 急需JAVA人才,有意请于我联系!
- 一个非常非常小的问题:JAVA中的清单文件怎么写呀?
- Exception in thread "main" java.lang.NoClassDefFoundError :~~ 。怎么解决?
- 团队开发工具
- 对不起,耽误高手一点时间。(初学问题)
- 我编的聊天程序,为什么程序不能正常退出
- 如何在textarea中保存格式??????
下载SQL Server 2000 Driver for JDBC Service Pack 3,支持JDK 1.4
1. 网址:
http://www.microsoft.com/downloads/details.aspx?FamilyID=07287b11-0502-461a-b138-2aa54bfdc03a&displaylang=en
2. 执行setup.exe安装SQL Server JDBC驱动程序。在安装目录下有帮助文件。
3. 在Eclipse安装目录,例如D:\lecture\JAVA\Eclipse\eclipse下创建路经:
D:\lecture\JAVA\Eclipse\eclipse\jdbc\SQLServerJDBC\lib。
4. 将setup.exe安装的下面3个java归档文件放入其中:
1) msbase.jar
2) mssqlserver.jar
3) msutil.jar
一、 在项目库中导入驱动程序库
1. 创建新项目。文件 > 新建 > 项目 > 打开新建项目对话框。
2. 选择Java项目 > 下一步 > 打开新建Java项目对话框。
3. 输入项目名JDBCTest > 完成。
4. 打开导航器窗口,检查新创建的项目。
二、 用于测试连接的代码示例
 用于SQL Server的测试连接的代码示例
安装了 Microsoft SQL Server 2000 JDBC 驱动程序后,可以通过两种方式从您的程序连接到数据库:使用连接 URL,或使用 JNDI 数据源。本文介绍如何使用连接 URL 配置和测试数据库连接。
连接到数据库的一种方法是通过 JDBC 驱动程序管理器,使用 DriverManager 类的 getConnection 方法。使用此方法时,最简单的方式是使用一个包含 URL、用户名和密码的字符串参数。下面介绍如何从 JDBC 程序载入 Microsoft SQL Server 2000 JDBC 驱动程序。创建测试类
1. 右击新建的项目JDBCTest > 新建 > 包 >打开新建Java包对话框。
2. 在名称栏输入testJDBC > 完成。
3. 右击新建的包testJDBC > 新建 > 类 > 打开新建Java类对话框。
4. 在名称栏输入SQLServerJDBCTest >完成。
添加库
要将JAR文件添加到现有应用程序中。
1. 右击项目JDBCTest > 属性 > 打开JDBCTest的属性对话框。
2. 在左边的窗格中选择Java构建路径 > 在右边的窗格中选择库标签
3. 单击按钮添加外部JAR > 选择前面下载的3个SQL Server JDBC驱动程序的JAR文件 > 确定。注册驱动程序
注册驱动程序的目的是为了通知 JDBC 驱动程序管理器载入哪个驱动程序。当使用 class.forName 函数载入驱动程序时,您必须指定驱动程序的名称。以下是 Microsoft SQL Server 2000 JDBC 驱动程序的名称:
com.microsoft.jdbc.sqlserver.SQLServerDriver
下面的代码示例演示如何注册驱动程序:
Driver d = (Driver)Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();传递连接 URL
必须以连接 URL 的形式传递数据库连接信息。以下是 Microsoft SQL Server 2000 JDBC 驱动程序的模板 URL。请用您数据库的值替换以下值:
jdbc:microsoft:sqlserver://servername:1433
下面的代码示例演示如何指定连接 URL:
con = DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433", "userName", "password");服务器名称值可以是 IP 地址或主机名(假定您的网络可以将主机名解析为 IP 地址)。您可以通过对主机名执行 PING 命令来进行测试,验证是否可以接收到响应,以及响应的 IP 地址是否正确。 服务器名称后面的数字值是数据库侦听的端口号。上文列出的值是示例默认值。确保用您的数据库使用的端口号替换该值。 要获取连接 URL 参数的完整列表,请参见 Microsoft SQL Server 2000 JDBC 驱动程序 HTML 帮助,或参见联机指南。请参见“连接字符串属性”一节。
下面的代码示例尝试连接到数据库,并显示数据库名称、版本和可用编目。请用您服务器的值替换代码中的服务器属性:
package testJDBC;public class SQLServerJDBCTest {
private java.sql.Connection con = null;
private final String url = "jdbc:microsoft:sqlserver://";
private final String serverName= "localhost";
private final String portNumber = "1433";
private final String databaseName= "pubs";
private final String userName = "sa";
private final String password = "wyfd";
// 告诉驱动器使用服务器端游标,
// 它允许在一个连接上的多个活动语句。
private final String selectMethod = "cursor";
private java.sql.Connection getConnection(){
try{
// A. 注册 SQL Server JDBC 驱动程序
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
// B. 创建新数据库连接
con = java.sql.DriverManager.getConnection(getConnectionUrl(),userName,password);
if(con!=null) System.out.println("Connection Successful!");
}catch(Exception e){
e.printStackTrace();
System.out.println("Error Trace in getConnection() : " + e.getMessage());
}
return con;
}
private String getConnectionUrl(){
return url+serverName+":"+portNumber+";databaseName="+databaseName+";selectMethod="+selectMethod+";";
}
private void closeConnection(){
try{
if(con!=null)
con.close();
con=null;
}catch(Exception e){
e.printStackTrace();
}
} /*
显示驱动器属性,数据库详细信息
*/
public void displayDbProperties(){
java.sql.DatabaseMetaData dm = null;
java.sql.ResultSet rs = null;
try{
con= this.getConnection();
if(con!=null){
dm = con.getMetaData();
System.out.println("驱动器信息:");
System.out.println("\t驱动器名字: "+ dm.getDriverName());
System.out.println("\t驱动器版本: "+ dm.getDriverVersion ());
System.out.println("\n数据库信息: ");
System.out.println("\t数据库名字: "+ dm.getDatabaseProductName());
System.out.println("\t数据库版本: "+ dm.getDatabaseProductVersion());
System.out.println("显示可用的数据库目录:");
rs = dm.getCatalogs();
while(rs.next()){
System.out.println("\tcatalog: "+ rs.getString(1));
}
//rs = dm.getTables("ckgl",null,"ckgl","TABLE").getCatalogs();
while(rs.next()){
System.out.println("\tcatalog: "+ rs.getString(1));
}
rs.close();
rs = null;
closeConnection();
}else System.out.println("Error: No active Connection");
}catch(Exception e){
e.printStackTrace();
}
dm=null;
} public static void main(String[] args) {
SQLServerJDBCTest sQLServerJDBCTest = new SQLServerJDBCTest();
sQLServerJDBCTest.displayDbProperties();
}
}