今天看了一本spring书,有点疑惑,

在spring中注入datasource,
他用到了jndi(tomcat的),
在tomcat中配置jndi。
然后在spring中注入jndi
我感觉在spring中用jndi是没有必要的,
datasource既然可以随时注入,
随时更改,那jndi还有必要吗???

我做的是小项目,是不是在大项目中有特别的用处啊
[b]问题补充:[/b]
jndi我知道,说的不清楚,
spring的datasource中注入(jndi)多个连接池。也就能对多个数据库做操作了,
一个项目中要用到多个数据库,我还没有碰到,
想想。。。。。
向银行的业务,工商,邮政,民生....,他们的转账就会用到多个数据库,
那就有分布式的事务了,难啊。。。。。。
看来要学的东西好多啊,

[b]问题补充:[/b]
确定一下。jndi就向jdbc一样吧?? 我想他们都是谢协议(接口)
[b]问题补充:[/b]
用jndi,spring中也只能注入一个连接池啊,不能注入多个连接池啊,

2个回答

[quote]spring的datasource[/quote]
dataSource不是spring的。。。是Java EE的规范中的,呵呵

[quote]确定一下。jndi就向jdbc一样吧?? 我想他们都是谢协议(接口)[/quote]
jndi是一种识名制,jdbc是数据库连接驱动
jndi不是接口,是一种制度
可以通过名称对应到类

[quote]用jndi,spring中也只能注入一个连接池啊,不能注入多个连接池啊[/quote]
是可以注入多个链接池的,有空你可以去翻番spring的源码,我手上没有,你看了就明白,就是通过jndi找到类的全名路径,之后动态的把它加载进去

[quote]jndi(tomcat的) [/quote]
帅哥,jndi不是tomcat的
Java Naming and Directory Interface,这是Java EE的规范

大概是这样的,全部的数据库驱动返回的都是其实都是dataSource
这样通过JNDI的这种识名制可以连接不通的数据库的
比如,你可以同事连接Mysql和Oracle等等

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问