今日經(jīng)過幾個小時的測試與調(diào)試,成功完成Hibernate調(diào)用Weblogic的數(shù)據(jù)源,其實不是什么大問題,如果有Spirng來做這事,就簡單多了,現(xiàn)在的項目沒有利用Spring,而是Struts + Hibernate,在weblogic上運行,不羅嗦了,具體步驟如下:
一、安裝weblogic,配置數(shù)據(jù)庫連接池和數(shù)據(jù)源。我使用的是SqlServer 2000 ,數(shù)據(jù)源名稱為myDataSource;
二、Hibernate的配置文件如下:
?<?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">myDataSource</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.SQLServerDialect</property>
??
??
??<property name="hibernate.query.factory_class">org.hibernate.hql.classic.ClassicQueryTranslatorFactory</property>
????
?????
????? <mapping resource="zx/common/model/User.hbm.xml" />

?</session-factory>

?</hibernate-configuration>

?? 注意: 在運行過程中出現(xiàn)ClassNotFoundException: org.hibernate.hql.ast.HqlToken,則配置hibernate.query.factory_class就可以解決了.

三、相關持久類、映射文件 省略

四、調(diào)用
????? ?????? //SessionFactory sessions =? new Configuration().buildSessionFactory();??? ?????
??? ?????? SessionFactory sessions = new Configuration().configure().buildSessionFactory();
??? ?????? Session session = sessions.openSession();
??? ?????? Query query =? session.createQuery(" from User as t ");??? ??????
??? ?????? List list = query.list();

五、一切ok!

?