Weblogic81和ORM工具Hibernate 的集成問題
Weblogic81和ORM工具Hibernate的集成問題 費了一天,終于搞定了Hibernate和Weblogic81的集成安裝問題。網上資料或多或少涉及到了,但都不完整、詳細。本文參考了 java 視線論壇版主的文章和hibernate網站的文章撰寫了本文,希望能對各位Hibernate初學者能有
Weblogic81和ORM工具Hibernate 的集成問題
費了一天,終于搞定了Hibernate和Weblogic81的集成安裝問題。網上
資料或多或少涉及到了,但都不完整、詳細。本文參考了
java視線
論壇版主的文章和hibernate網站的文章撰寫了本文,希望能對各位Hibernate初學者能有所幫助。
假設你的工程是D:\testprj;D\testprj\lib存放所有的Hibernate的lib下的jar文件;D;\testprj\classes存放所有的class文件,特別包括一
weblogic啟動類編寫的專用于建立hibernate的sessionfactory的class文件,還有hibernate.propties、log4j.properties、cache.
clearcase/" target="_blank" >ccf、oscache.properties四個配置文件;
D:\bea\
weblogic81
1.首先第一步是修改配置weblogic啟動環境,添加hibernate的lib和class目錄到weblogic的classpath環境中,具體做法是:
找到 D:\bea\user_projects\domains\mydomain\start
WebLogic.cmd,添加如下紅色字體代碼到文件中:
set SERVER_NAME=caserver
set CLASSPATH=%WEBLOGIC_CLASSPATH%;%POINTBASE_CLASSPATH%;%JAVA_HOME%\jre\lib\rt.jar;%WL_HOME%\server\lib\webservices.jar;%CLASSPATH%
@rem set hibernate classpath
set HIBERNATE_LIB=D\testprj\lib
set HIBERNATE_CLASSES=D\testprj\classes
set CLASSPATH=%HIBERNATE_LIB%\cglib-asm.jar;%HIBERNATE_LIB%\cglib-full-2.0.1.jar;%HIBERNATE_LIB%\ehcache-0.7.jar;%HIBERNATE_LIB%\commons-beanutils.jar;%HIBERNATE_LIB%\commons-logging-1.0.3.jar;%HIBERNATE_LIB%\commons-collections-2.1.jar;%HIBERNATE_LIB%\commons-lang.jar;%HIBERNATE_LIB%\commons-logging.jar;%HIBERNATE_LIB%\dom4j-full.jar;%HIBERNATE_LIB%\jcs.jar;%HIBERNATE_LIB%\log4j-1.2.8.jar;%HIBERNATE_LIB%\odmg.jar;%HIBERNATE_LIB%\dom4j-1.4.jar;%HIBERNATE_LIB%\hibernate2.jar;%HIBERNATE_CLASSES%;%CLASSPATH%
@REM Call WebLogic Server
注意到網上有的網友同樣添加jar文件后可能有空格或換行符,出現了用winrar和weblogic不能正常啟動的現象,所以最好set CLASSPATH這一行一定要一行寫完,同樣jar文件名一定要和hibernate 的jar文件一致,否者,最后weblogic啟動時候,會出現找不到什么class not found的現象。
2.利用weblogic的console配置一個jdbc pool,我采用的
數據庫是sybase,以及一個datasource,datasource當然要用開頭的jdbc pool,我們假設它的jndi名稱為misdb;
3.修改hibernate的配置文件,hibernate的配置文件有兩個hibernate.propties和hibernate.cfg.xml,前一個是hibernate啟動后調用缺省初始化環境文件,后一個是可動態調整,比如說添加數據表的映射文件等等,如何添加的代碼,網上可以找的到,我這里就不重復了,兩個配置文件有一個就可以了,在初始化hibernate,將hibernate幫定到weblogic的jndi,我們可以在第四步的weblogic啟動類源代碼中說明。
hibernate.propties文件配置文件配置比較簡單,而且
數據庫的參數,很多都已經用注釋寫好了。真是太cool了。
這里我們要用weblogic的數據源misdb.
修改添加如下代碼,切記,一定保證下面代碼唯一啊。
## Hypersonic
SQL#hibernate.dialect 
.net.sf.hibernate.dialect.H
SQLDialect
#hibernate.connection.driver_class org.h
sqldb.jdbcDriver
#hibernate.connection.username sa
#hibernate.connection.password
#hibernate.connection.url jdbc:hsqldb:hsql://localhost
#hibernate.connection.url jdbc:hsqldb:test
#hibernate.connection.url jdbc:hsqldb:.
綠色代碼一定要注釋掉,用#符號
hibernate.dialect net.sf.hibernate.dialect.SybaseDialect
hibernate.connection.datasource misdb
hibernate.connection.provider_class net.sf.hibernate.connection.DatasourceConnectionProvider
hibernate.session_factory_name hibernate.session_factory
hibernate.jdbc.fetch_size 50
hibernate.jdbc.batch_size 25
紅色代碼添加入,注意可能后面也有相應的參數配置,記住注釋掉
放心,附件會附代碼的
okay.文件配置完畢,記住要在d:\testprj\classes目錄下;
4.編寫weblogic啟動類源程序,沒辦法,因為weblogic特殊,只能這樣建立hibernate 的sessionfactory,為什么,因為下面這句
the JNDI implementation in WebLogic Server does not appear to support the Referenceable interface, and exhibits some rather strange behaviour when binding Serializable objects.
代碼關鍵兩句是
Configuration cfg = new Configuration();
SessionFactory factory = cfg.buildSessionFactory();
網上有些文章到不是不對,有的是直接映射了對象類,比如說cat類了,有的是用
Configuration cfg = new Configuration().configure();記住此時就是用hibernate.cfg.xml 文件配置
我覺得我這兩句最簡單,直接調用了hibernate.propties的參數;
代碼能,下面也有,編譯的時候一定要用
ant編譯,如何配置ant,網上很多文章都有提到,我就不多說了。將WLSstartup.
java放到D:\hibernate21\src\net\sf\hibernate下,
然后在命令行下用ant或者運行build.bat批處理文件,編譯后的WlSstartup.class大概在D:\hibernate21\build目錄下,然后copy到d:\testprj\classes
okay,完畢
5.就是將WlSstartup類在weblogic的console中配置好,怎么配,robbin的文章或者weblogic的隨便那個管理配置的文章都有,我這里就不提了。
好的,所有注意事項步驟完畢,啟動你的weblogic吧。應該是正常的信息,只要你按照我的步驟做,沒問題的。
有什么問題,可以留言 我的blog或者
http://gispda.blogdirver.com或者email給我 gispda@163.com
打包文件里有hibernate.propties和 wlsstartup.java文件
附件:hibernate.properties(12K)附件:WLSStartup.java(3K)
原文轉自:http://www.anti-gravitydesign.com
国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97
|