JDBC连接和语句类

时间:2009-11-10 06:41:14

标签: java jdbc connection

由于连接语句是接口,因此默认情况下接口方法将是抽象的。如何在连接数据库时在Java程序中创建Connection和Statement接口?

4 个答案:

答案 0 :(得分:2)

实际上,JDBC驱动程序提供了实现。 API为您提供了一种使用该方法的方法。请看this example

答案 1 :(得分:2)

实现由数据库的JDBC驱动程序提供。例如对于MySql,您可以下载JDBC Driver for MySQL (Connector/J)并将jar文件放在应用程序的类路径中。

然后你调用DriverManager(例如)这会给你一个实现Connection接口的类的实例。

Connection c = DriverManager.getConnection("jdbc:mysql://[yourhost]/[nameofyourdb]?user=[username]&password=[password]");

现在,您可以从Connection实例中获取实现Statement接口的类的实例。

Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM [yourtablename]");
....

有关更多示例,请稍微谷歌(JDBC,java,[nameofyourdb])

对于Connector / J,这里有一个很好的文档

MySQL Connector/J

Connector/J Examples

答案 2 :(得分:0)

实际上,接口由Sun提供,并且每个人都知道接口是一组规则,将用于特定的编程性质和一致的结构。因此数据库供应商采用该接口并将导致API不破坏原型。因此,无论其逻辑如何,每个供应商都实现了与该接口相同的名称。

因此,开发人员无需担心其实现,只需了解接口名称即可。

答案 3 :(得分:0)

我在工作中研究过数据库的抽象。这是一些示例代码

Database database = new Database(new SQL("host", "port","database", "username","password"));
List<tStd_M_lt> bases =  database.select(tStd_M_lt.class, new Where(tStd_M_lt.FIELDS.ITEM_ID.getDatabaseFieldName(), OPERATOR.LIKE, "?"), "%Base%");
for (tStd_M_lt base : bases)
{
    List<tShower_Base_Kit> kits = database.selectByForiegnKey(tShower_Base_Kit.class, base);
}

该项目名为azirt