生活随笔
收集整理的這篇文章主要介紹了
Spring与Hibernate两种组合方式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Spring與Hibernate大致有兩種組合方式,主要區別是一種是在Hibernate中的hibernate.cfg.xml中配置數據源,一種是借助Spring的jdbc方式在Spring的applicationContext.xml文件中配置數據源,然后在Spring配置sessionFactory的bean有些區別
下面大致的說明一下
第一種
1.hibernate.cfg.xml文件
xml?version='1.0'?encoding='utf-8'?>? ????????"-//Hibernate/Hibernate?Configuration?DTD?3.0//EN" ?????????"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">??<hibernate-configuration>??????<session-factory>??????????????????<property?name="connection.driver_class">com.microsoft.jdbc.sqlserver.SQLServerDriverproperty>?????????<property?name="connection.url">jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=acegi;SelectMethod=cursorproperty>?????????<property?name="connection.username">saproperty>?????????<property?name="connection.password">serverproperty>?????????<property?name="show_sql">trueproperty>???????????<mapping?resource=""/>??????session-factory>??hibernate-configuration>?2.在spring配置sessionFactory
<bean?id="sessionFactory"????class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">????<property?name="configLocation"?value="classpath:hibernate.cfg.xml"></property>??</bean>??<bean?id="txManager"?class="org.springframework.orm.hibernate3.HibernateTransactionManager">?????<property?name="sessionFactory"?ref="sessionFactory"></property>??</bean>??<tx:annotation-driven?transaction-manager="txManager"/>?或者實現hibernate零配置
<bean?id="sessionFactory"?class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">????<property?name="configLocation"?value="classpath:hibernate.cfg.xml"></property>?????<property?name="packagesToScan"?value="com/wch/entity/"></property>??</bean>??<bean?id="txManager"?class="org.springframework.orm.hibernate3.HibernateTransactionManager">?????<property?name="sessionFactory"?ref="sessionFactory"></property>??</bean>??<tx:annotation-driven?transaction-manager="txManager"/>?第二種
<bean?id="dataSource"?class="org.apache.commons.dbcp.BasicDataSource">??????????<property?name="driverClassName"?value="com.microsoft.jdbc.sqlserver.SQLServerDriver"/>??????????<property?name="url"?value="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=acegi;SelectMethod=cursor"/>??????????<property?name="username"?value="sa"/>??????????<property?name="password"?value="server"/>??????</bean>??? ??<bean?id="sessionFactory"?class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">????<property?name="dataSource"?value="dataSource"></property>??<property?name="mappingResources">??????<list>???????????????<value>user.hbm.xml</value>??????</list>??</property>??<property?name="hibernateProperties">???????<props>?????????<prop?key="hibernate.show_sql">true</prop>????</props>???</property>??</bean>?? ??????</bean>??<bean?id="txManager"?class="org.springframework.orm.hibernate3.HibernateTransactionManager">?????<property?name="sessionFactory"?ref="sessionFactory"></property>??</bean>??<tx:annotation-driven?transaction-manager="txManager"/>?或者實現hibernate的零配置?
<bean?id="dataSource"?class="org.apache.commons.dbcp.BasicDataSource">?????????<property?name="driverClassName"?value="com.microsoft.jdbc.sqlserver.SQLServerDriver"/>?????????<property?name="url"?value="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=acegi;SelectMethod=cursor"/>?????????<property?name="username"?value="sa"/>?????????<property?name="password"?value="server"/>???</bean>?? ?<bean?id="sessionFactory"?class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">???<property?name="dataSource"?value="dataSource"></property>????<property?name="packagesToScan"?value="com/wch/entity/"></property>?</bean>?<bean?id="txManager"?class="org.springframework.orm.hibernate3.HibernateTransactionManager">????<property?name="sessionFactory"?ref="sessionFactory"></property>?</bean>?<tx:annotation-driven?transaction-manager="txManager"/>??
總結
以上是生活随笔為你收集整理的Spring与Hibernate两种组合方式的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。