自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何解決Struts Hibernate的整合問題

開發(fā) 后端
struts和Hibernate整合的一種方式(hibernate作為struts插件),把Hibernate用到的包全部放進(jìn)web應(yīng)用程序的lib里面,然后定義hibernate.cfg.xml,也就是插件的配置信息

我們今天要討論struts Hibernate ,下面通一實例,我們能更深刻的了解struts Hibernate的整合問題。希望本文能對大家了解有所幫助。

把Hibernate用到的包全部放進(jìn)web應(yīng)用程序的lib里面,然后定義hibernate.cfg.xml,也就是插件的配置信息,如下

  1. xml version="1.0" encoding="UTF-8"?> 
  2.                                          "http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd"> 
  3. <hibernate-configuration> 
  4.     <session-factory> 
  5.         <property name="show_sql">falseproperty> 
  6.         <property name="use_outer_join">trueproperty> 
  7.         <property name="hibernate.dialect">net.sf.hibernate.dialect.MySQLDialectproperty> 
  8.         <property name="hibernate.connection.driver_class">org.gjt.mm.mysql.Driverproperty> 
  9.         <property name="hibernate.connection.url">jdbc:mysql:///testproperty> 
  10.         <property name="hibernate.connection.username">rootproperty> 
  11.         <property name="hibernate.connection.password">property> 
  12.         <property name="hibernate.connection.pool.size">20property> 
  13.         <property name="session_factory_name">hibernate/session_factoryproperty> 
  14.          
  15.     <mapping resource="/homepage/Artical.hbm.xml"/> 
  16.  
  17.     session-factory> 
  18. hibernate-configuration> 
  19.  

信息很清楚的,就是配置數(shù)據(jù)庫等信息,我們利用jndi來查找SessionFactory,下面是插件程序,

  1. HibernatePlugIn.java  
  2.  
  3. import org.apache.struts.action.PlugIn;  
  4. import org.apache.struts.action.ActionServlet;  
  5. import org.apache.struts.config.ModuleConfig;  
  6. import javax.servlet.ServletException;  
  7. import javax.servlet.ServletContext;  
  8. import net.sf.hibernate.SessionFactory;  
  9. import net.sf.hibernate.cfg.Configuration;  
  10. public class HibernatePlugIn  
  11.     implements PlugIn {  
  12.   public void destroy() {  
  13.   }  
  14.   public void init(ActionServlet servlet, ModuleConfig config) throws  
  15.       ServletException {  
  16.     try {  
  17.       ServletContext context = servlet.getServletContext();  
  18.       SessionFactory sf = new Configuration().configure().buildSessionFactory();  
  19.       context.setAttribute("net.sf.hibernate.SessionFactory",sf);  
  20.     }  
  21.     catch (Exception ex) {  
  22.       ex.printStackTrace();  
  23.     }  
  24.   }  
  25. }  
  26.  

相應(yīng)的,要在struts-config.xml配置插件信息,大概如下,注意路徑

  1. <plug-in className="homepage.HibernatePlugIn"> 
  2.     <set-property property="configFilePath" value="/WEB-INF/classes/hibernate.cfg.xml" /> 
  3.     <set-property property="storeInServletContext" value="true" /> 
  4.   plug-in> 

以后就可以利用java.naming.Context,java.naming.InitiaContext來查找

  1. Context ct = new InitialContext();  
  2.       sessions=(SessionFactory) ct.lookup("hibernate/session_factory");  
  3.       session=sessions.openSession();  


當(dāng)然,還有另外兩種整合方式,我認(rèn)為這種方法更為靈活,也比較容易掌握。以上介紹struts Hibernate。

【編輯推薦】

  1. Hibernate3.1簡單描述
  2. Hibernate save基礎(chǔ)簡介
  3. 淺析Hibernate 3二級緩存基礎(chǔ)
  4. Hibernate流行架構(gòu)淺析
  5. Hibernate update淺談
責(zé)任編輯:仲衡 來源: csdn
相關(guān)推薦

2009-03-06 14:34:31

StrutsHibernateSpring

2012-09-05 11:09:15

SELinux操作系統(tǒng)

2009-06-04 10:58:15

strutshibernate分頁

2017-10-17 09:21:06

2010-04-29 17:46:31

Oracle死鎖

2021-10-20 20:27:55

MySQL死鎖并發(fā)

2019-11-26 14:30:20

Spring循環(huán)依賴Java

2024-12-05 09:06:58

2023-07-18 16:05:00

IP地址

2017-07-20 07:30:16

大數(shù)據(jù)數(shù)據(jù)互聯(lián)網(wǎng)

2024-10-29 16:41:24

SpringBoot跨域Java

2013-05-21 10:49:59

Windows硬件沖突

2010-07-16 13:52:26

telnet漏洞

2011-08-29 10:34:00

網(wǎng)絡(luò)安全云安全云計算

2023-10-30 18:35:47

MySQL主從延時

2011-03-23 14:42:47

CPU過度消耗

2021-06-06 13:05:15

前端跨域CORS

2018-04-09 16:00:30

Windows 10Windows更新

2020-12-14 06:57:37

shell

2021-01-30 19:35:44

HDFS單點Hadoop
點贊
收藏

51CTO技術(shù)棧公眾號