我正在尝试为我的 Web 应用程序建立连接 我正在使用 DataSource 对象,它由 @Resource 注入(inject)
@Resource(name="jdbc/name")
private DataSource dataSource;
然后在方法 getConnection() 中尝试通过以下方式从 DataSource 对象获取连接
private Connection getConnection() {
Connection con = null;
try {
con = dataSource.getConnection();
} catch (SQLException e) {
LOGGER.error(e.getMessage());
}
return con;
}
但是我的数据源是空的,我得到了一个 NullPointerException。顺便说一句,相同的代码在扩展 HttpServlet 的类中运行良好。我需要在简单的 DBManager 类中使用此代码。
请帮忙,我该怎么办?
附言我配置了context.xml和web.xml
最佳答案
Autowiring 仅在 Spring 为您创建 bean 时才起作用。如果您使用 new DBManager()
创建实例,那么 Spring 将不会关心。
因此您需要创建或获取应用程序上下文(应配置为包含 DBManager
bean)然后使用它。
关于java - 在 Java 中从 DataSource 获取 Connection 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25935810/