现在项目中遇到一个查询问题,由于数据量很大,所以把一些使用量较小的数据放在另一个服务器上的数据库中.但是偶尔也会使用查询,这2个服务器上面数据是否能使用hiberhate做关联查询.不是单纯的查询出来数据,还有进一步的操作.hibernate跨数据库

解决方案 »

  1.   

    使用sql ...execute(HibernateCallBack....)
    ...sqlQuery 对应数据库下的表 返回map
      

  2.   

     我自己也觉得不可以,多数据源倒是可以实现,但是做关联,就无法形成反映射.好像只能通过oracle自带的功能做关联.
      

  3.   

    用SQL就可以了,需要创建BDlink
      

  4.   

    可以跨库查询的,hibernate的方言设计的目的就是这个
      

  5.   

    hibernate 当然支持跨数据库查询了,只要在主配置文件里的方言改成你所用的数据库就可以了啊(当然jar包驱动URL也得改哦)
      

  6.   

    Hibernate支持跨数据库查询,在配置文件中配置一下就行。(可多个)再关联一下就可以了,实现不行可以手动连接不同数据库,把结果再处理一下就可以了。
      

  7.   

    hibernate不能跨数据库,用它干嘛?只需要修改方言即可!
      

  8.   

    hibernate 注解可以生成数据库,表和字段都指定对应的方言就可以,只是没有办法是用hql查询,想建立关系只能建立假的映射关系,然后是用sql查询
      

  9.   

    配置两个数据源,分别查询。不能跨数据库、一般项目不建议两个数据源。而且还注意事物要用jta不然失效。
    网络情况不复杂通常建议跑rmi接口,进行跨项目间的交互,复杂通常建议跑webservice。
      

  10.   

    Hibernate默认使用JDBC本地事务,它只能在一个数据库中进行事务管理,如果要想进行跨数据操作就要用到JTA。具体做如下:
    <session-factory>
       <property name="hibernate.transaction.factory_class">
           org.hibernate.transaction.JTATransactionFactroy
       </property>
    </session-factory>
      

  11.   

    配置不同的datasource,分别查出来,逻辑用代码实现,这样几个数据库不同数据库也可以