请选择 进入手机版 | 继续访问电脑版
本站特色:极好的技术研究氛围!所有技术交流,必有回复!

疯狂Java联盟

 找回密码
 加入联盟
楼主: heyitang

spring框架中处理多数据源的解决思路[转]

    [复制链接]
 楼主| 发表于 2009-8-22 19:22:18 | 显示全部楼层
原帖由 gua_hu 于 2009-8-22 09:12 发表
Oracle中DBA权限的用户是可以访问所有用户表的...

   DataSource中配置的即为DBA权限用户.  该用户与别的用户表结构是相同的..

   利用这点..  在写SQL语句时切换用户只需修改Schema就可以.

     SELECT * FROM U ...


感觉,你好象没有认真看过,我上面附的原作者的代码,这个切换多数据源主要是在applicationContext.xml文件中,然后是在MultiDataSource来配置,但是,从你上面的说法中,好象把重点放在sql语句上的选择上,个人觉得你没有好好理会我上面帖上来的文章,建议你针对上面的文章,好好看上面附上的源代码文件
 楼主| 发表于 2009-8-22 19:23:33 | 显示全部楼层
原帖由 gua_hu 于 2009-8-22 09:15 发表
还有像问下原帖出自哪里?  谢谢.


你可以网上搜吧。。一搜就可以搜到的,我具体记不清从哪里看的了
发表于 2009-8-24 08:30:00 | 显示全部楼层
不好意识..   这几天天天刷着个页面等你回复..

   漏过了一个很严重的问题(翻页).  今天猛然看到已经第二页了..
  
  我可以保证一点我已经把上面文章模拟了一次.(除事务)

    由于我的项目不可能实现多个数据源.  

  添加一个用户为在用户表中添加一个用户,跟通常用户一样.只是多个字段名为Schema.

   用户可能很多.   配置数据源的话需要添加太多 (上文的动态配置已看).

    还是一点.Oracle的DBA权限用户是可以操作所用用户表的. 是不是利用这点.

   数据源配置一个. 即为DBA用户.  根据登录用户的Schema决定操作哪个.
 楼主| 发表于 2009-8-24 13:07:11 | 显示全部楼层
原帖由 gua_hu 于 2009-8-24 08:30 发表
不好意识..   这几天天天刷着个页面等你回复..

   漏过了一个很严重的问题(翻页).  今天猛然看到已经第二页了..
  
  我可以保证一点我已经把上面文章模拟了一次.(除事务)

    由于我的项目不可能实现多个数据源.  ...


其实,你的这种情况,只有一个oracle数据库,配置一个数据源应该是可以了的。。如果,是按你的说法,就是DBA的用户,你也得要在spring的指定你要操作的pojo类(要操作的实际表),没有在spring的配置文件中指定相关映射的表,你在ssh环境下也不能操作所有的表啊。。另外,你配置好了DBA用户,当spring容器已经加载完毕后,你再来根据登录用户的scheme来控制某个用户只访问某些表,似乎不可能了,因为映射关系已经存在了,因为,你已经没法用scheme来控制登录用户只能访问某些表了,哦,这是我个人的看法,不一定对
另外,你有自己的想法了,最好就马上行动,自己写代码去测试,发现了问题,再来思考,和别人交流就会有效果了!
发表于 2009-8-24 20:04:16 | 显示全部楼层
LS的可以考虑一下使用 Synonym 就可以了。
如果还涉及到不同数据库中的表时,可以先使用DB link再用Synonym来做

评分

1

查看全部评分

发表于 2009-8-25 08:20:55 | 显示全部楼层
原帖由 Fetch 于 2009-8-24 20:04 发表
LS的可以考虑一下使用 Synonym 就可以了。
如果还涉及到不同数据库中的表时,可以先使用DB link再用Synonym来做


谢谢..  Synonym我以前也没用过. 刚看了下好像也不行.
Hibernate是通过XML映射来与数据库表关系的.pojo名即统一了.如果我理解错误请指出.
发表于 2009-8-25 08:26:17 | 显示全部楼层
我现在使用多个sessionFactory来切换Schema,但这样有N个Schema就需创建N个sessionFactory,在没次执行操作时切换.
这样暂时是可行的.只是使用时比较烦. 现在还有个问题就是需要动态创建sessionFactory,不然增加一个用户就要重启.

请问下这样是否可行?
发表于 2009-8-25 15:16:52 | 显示全部楼层
好文章呀,先收藏起来,再慢慢研究。谢谢
发表于 2013-2-26 12:46:46 | 显示全部楼层
值得一顶~
发表于 2013-6-18 11:26:20 | 显示全部楼层
学习了。。
您需要登录后才可以回帖 登录 | 加入联盟

本版积分规则

视频、代码、电子书下载
请关注"疯狂图书"公众号
QQ交流1群: 545923995  未满
微信群请扫二维码
QQ交流1群:
545923995
(未满)

小黑屋|手机版|Archiver|疯狂Java联盟 ( 粤ICP备11094030号 )

GMT+8, 2019-3-21 15:55 , Processed in 0.258608 second(s), 9 queries , File On.

快速回复 返回顶部 返回列表