Mysql驱动程序本身是否实现了DataSource接口?

时间:2014-03-14 18:53:26

标签: java mysql hibernate jdbc

来自Oracle的JDBC文档说驱动程序提供程序应该实现DataSource接口,但在实际项目源文件中,我总是看到DataSource来自第3个,例如DBCP连接池。

我想知道MySQL驱动程序本身是否实现了DataSource接口?

2 个答案:

答案 0 :(得分:1)

如果您正在谈论Connector/J,则提供:

  • com.mysql.jdbc.jdbc2.optional.MysqlDataSource(实现DataSource),
  • com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource(实施ConnectionPoolDataSource
  • com.mysql.jdbc.jdbc2.optional.MysqlXADataSource(实施XADataSource

所以,就你的问题而言。 Connector / J DataSource接口提供实现并符合JDBC规范。

但是,正如您在问题和@ Piotr的回答中所知,大多数应用程序永远不会直接处理这些实现。作为Java开发人员,至少在十年内我从未这样做过。让Java EE App Server为您处理连接,或者如果您使用独立应用程序,则安装第三方连接池。

答案 1 :(得分:0)

您可以使用JDBC驱动程序提供的本机DataSource,但您通常使用的是连接池,如DBCP,C3P0或BoneCP。