我想知道下面的驱动程序哪个更快更可靠。
com.mysql.jdbc.PreparedStatement - mysql
java.sql.PreparedStatement - jdbc
那么在Java中使用哪一个很好?
答案 0 :(得分:2)
com.mysql.jdbc.PreparedStatement
实施java.sql.PreparedStatement
。
而是使用java.sql.PreparedStatement
。您根本不希望代码担心特定于供应商的PreparedStatement
。我建议始终在必要时使用API。
答案 1 :(得分:2)
从系统返回的java.sql.PreparedStatement实际上是数据库驱动程序的PreparedStatement实现的具体实例。例如,如果您使用的是mysql驱动程序,那么您获得的实际上是您要求将其与com.mysql.jdbc.PreparedStatement
类进行比较的实例。
您可以看到MySQL版本here的代码,您可以在其中看到它实现了java.sql.PreparedStatement接口。
public class PreparedStatement
extends com.mysql.jdbc.StatementImpl
implements java.sql.PreparedStatement {
...
根据我的经验,我唯一一次想要将它转换为com.mysql.jdbc.PreparedStatement
的唯一一次是能够获得语句的String代表及其输入...这可以是方便调试。
答案 2 :(得分:0)
您应该坚持使用java.sql
接口类型。我认为没有理由下载到特定于供应商的实现。你得到的很少甚至没有;你失去了便携性。