【发布时间】:2017-05-28 09:00:09
【问题描述】:
我正在尝试制作一个 DataSource 对象,就像文档中提到的那样: Apache Tomcat 8.5 Connection Pool 代码示例。
我的代码如下:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import javax.sql.DataSource;
import org.apache.tomcat.jdbc.pool.PoolProperties;
/**
* Class for encapsulating data connection and retrieving.
* @author George
*
*/
public class DataConnector {
private static final String USERNAME = "root";
private static final String PASSWORD = "";
private static final String DATABASE_NAME = "store_db";
public DataConnector(){
PoolProperties p = new PoolProperties();
p.setUrl("jdbc:mysql://localhost:3306/" + DATABASE_NAME);
p.setDriverClassName("com.mysql.jdbc.Driver");
p.setUsername(USERNAME);
p.setPassword(PASSWORD);
DataSource ds = new DataSource();
}
}
但它给出了以下错误:无法实例化类型 DataSource。 有什么建议吗?
【问题讨论】:
-
因为DataSource是一个接口。 docs.oracle.com/javase/8/docs/api/javax/sql/….
-
@JBNizet 你能解释一下为什么在我上面提到的链接中的示例代码中使用它。
-
你链接的页面中没有这样的例子。
-
@JBNizet 请转到代码示例 -> Plain Ol' Java。
-
代码使用
import org.apache.tomcat.jdbc.pool.DataSource;。您的代码使用import javax.sql.DataSource;。不是同一个班级。