首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在“非Spring-Bean”JNDI DataSource中使用JdbcTemplate

在“非Spring-Bean”JNDI DataSource中使用JdbcTemplate
EN

Stack Overflow用户
提问于 2011-09-22 04:07:08
回答 1查看 1.3K关注 0票数 1

spring-framework-reference.pdf (与spring-framework-3.1.0.M2捆绑在一起)的第342页指出:“通过使用DataSource引用直接实例化,可以在DAO实现中使用JdbcTemplate。”但是,它继续说,“应该始终将DataSource配置为Spring IoC容器中的bean。”

有人知道为什么不应该从Spring容器外部的普通JNDI查找中将DataSource提供给JdbcTemplate吗,例如How to programatically use Spring's JdbcTemplate?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-09-22 05:55:12

“应该始终将DataSource配置为Spring IoC容器中的bean。”

这篇注释似乎是为了澄清前面的陈述:

通过使用DataSource引用直接实例化,可以在DAO实现中使用JdbcTemplate,也可以在Spring容器中配置并作为bean引用提供给DAO。

我相信这些语句试图传达的信息是,当您在Spring中配置DAO时,您可以:

  1. 将DataSource直接注入DAO并自己用代码创建JdbcTemplate,或者
  2. 您也可以使JdbcTemplate成为Spring bean,将DataSource注入JdbcTemplate,然后将JdbcTemplate注入DAO。

需要注意的是,如果Spring管理DAO及其依赖项,则无论哪种情况,DataSource都必须是Spring bean,因为需要将其注入到DataSource中以用于构造JdbcTemplate (情况1)或注入到JdbcTemplate本身(情况2)。

我并不认为这意味着在JdbcTemplate中使用的DataSource必须始终由Spring管理,并且只能由Spring管理。这张纸条确实给人留下了这种印象。这可能是值得提交一个bug的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7505962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档