Hibernate连接Weblogic的数据源

因为前两天,发了关于hibernate配置多数据库连接和选择什么服务器方案的缘故,有的朋友就动了心眼儿。。呵呵,想把程序跑在weblogic上,结果接着一连串的问题都出来了,
应几个朋友的需求,要用Hibernate调用Weblogic的数据源,所以,我就写了个配置的小例子,希望能帮助大家。


第一步:安装weblogic,配置数据源,我机器上装的是9.2,所以就拿weblogic9.2为例子讲解,数据库选用oracle,数据源名称为oracleDataSource



第二步、Hibernate.cfg.xml的配置文件如下:

  <?xml version='1.0' encoding='UTF-8'?>
 <!DOCTYPE hibernate-configuration PUBLIC
    "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
    " http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd "> 

 <hibernate-configuration> 

 <session-factory>
  <property name="hibernate.connection.datasource">oracleDataSource</property>
  <property name="hibernate.connection.provider_class">org.hibernate.connection.DatasourceConnectionProvider</property>
  <property name="hibernate.jndi.class">weblogic.jndi.WLInitialContextFactory</property>
  <property name="hibernate.show_sql">true</property>
  <property name="hibernate.jdbc.fetch_size">100</property>
  <property name="hibernate.jdbc.batch_size">50</property>
  <property name="hibernate.dialect">org.hibernate.dialect.OracleDialect</property>
  <property name="hibernate.query.factory_class">org.hibernate.hql.classic.ClassicQueryTranslatorFactory</property>

 </session-factory> 

 </hibernate-configuration> 

第三步:之后,调用就OK,在此说明一点,在配置的时候,一定要加上  <property name="hibernate.query.factory_class">org.hibernate.hql.classic.ClassicQueryTranslatorFactory</property>
要不然会报“ ClassNotFoundException: org.hibernate.hql.ast.HqlToken ”异常,这是因为Hibernate3.0 采用新的基于ANTLR的HQL/SQL查询翻译器,在Hibernate的配置文件中,hibernate.query.factory_class属性用来选择查询翻译器。使用3.0的批量更新和删除功能的时候出现了不支持条件输入中文的情况。
在此还说明一点,weblogic里自带了很多相关的jar文件,用weblogic的时候,如果出现一些莫名其妙的错,先去查一查有没有相关的jar包冲突。


                                                                                           

转载于:https://my.oschina.net/tianshibuzuoai/blog/65273

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值