0

我很困惑如何将我的 Java 应用程序连接到数据库,任何数据库。我不知道从哪里开始。有人可以为我提供一个简单的例子来帮助我吗?

4

3 回答 3

2

欢迎您提出更具体的问题,但由于问题很笼统,请从 Oracle 的 JDBC 教程开始,http://download.oracle.com/javase/tutorial/jdbc/index.html

于 2011-01-18T22:08:24.957 回答
0

要从 Java 应用程序连接到 SQL Server,您需要使用 JDBC API。JDBC API 提供连接到数据库、加载适当的驱动程序、发送 SQL 查询、检索结果等的类和方法。

如何连接到数据库

Connection对象表示与数据库的连接。要建立连接,请使用 方法DriverManager.getConnection。此方法接受一个包含 URL 的字符串,该 URL 表示我们尝试连接的数据库。下面是建立连接的示例代码:

private String DATABASE_URL = "jdbc:odbc:embedded_sql_app";
// establish connection to database
Connection connection = DriverManager.getConnection( DATABASE_URL,"sa","123" ); 

关于数据库 URL 以及如何创建它的详细讨论可以在本文末尾提供的资源中找到。

查询数据库

JDBC API 提供了三个接口用于向数据库发送 SQL 语句,Connection接口中的相应方法创建它们的实例。

  1. 语句 - 由Connection.createStatement方法创建。Statement对象用于发送不带参数的 SQL 语句。
  2. PreparedStatement - 由Connection.prepareStatement方法创建。PreparedStatement对象用于预编译的 SQL 语句。它们可以将一个或多个参数作为输入参数(IN 参数)。
  3. CallableStatement - 由Connection.prepareCall方法创建。CallableStatement对象用于从 Java 数据库应用程序执行 SQL 存储过程。

检索结果

AResultSet是一个 Java 对象,其中包含执行 SQL 查询的结果。存储在ResultSet对象中的数据是通过一组 get 方法检索的,这些方法允许访问当前行的各个列。该ResultSet.next方法用于移动到 的下一行ResultSet,使其成为当前行。

以下代码片段执行一个返回行集合的查询,其中 a列作为 a , intb 列作为 a String, c 列作为 a float

java.sql.Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT a, b, c FROM Table1");
while (rs.next()) {
    // retrieve and print the values for the current row
    int i = rs.getInt("a");
    String s = rs.getString("b");
    float f = rs.getFloat("c");
    System.out.println("ROW = " + i + " " + s + " " + f);
}

这只是关于如何从 Java 与数据库进行交互的简要介绍。有关上述项目的更多详细信息以及有关传递参数、执行存储过程等的信息,请参阅以下资源:

http://www.shahriarnk.com/Shahriar-NK-Research-Embedding-SQL-in-C-Sharp-Java.html#Shahriar_N_Embedding_SQL_in_Java

在这里,您还将找到有关如何以编程方式与数据库交互的信息;即不使用SQL。

希望您觉得这个有帮助。

于 2011-01-20T09:48:06.420 回答
0

除了 jdbc,您还可以使用 ibatis(或 mybatis)和 Hibernate 进行连接。Ibatis 非常简单(但有时配置起来很棘手)但它可以解决问题。ibati 例子

于 2011-01-19T14:30:13.243 回答