2. 加入 Hibernate 0)安裝 hibernate 插件·安裝方法說明(hibernatetools-4.1.1.Final):注:注意版本要與eclipse版本一致 –Help --> Install New Software... –Click Add... –In dialog Add Site dialog, click Archive... –Navigate to jbosstools-4.2.3.Final_2015-03-26_23-05-30-B264-updatesite-hibernatetools.zip and click Open –Clicking OK in the Add Site dialog will bring you back to the dialog 'Install' –Select the Jboss Tools hibernatetools Nightly Build Update Site that has appeared –Click Next and then Finish –Approve the license Restart eclipse when that is asked1). 同時建立持久化類, 和其對應的 .hbm.xml 文件, 生成對應的數(shù)據(jù)表 2). Spring 整合 Hibernate 3). 步驟: ①. 加入 jar 包 E:\工具\編程開發(fā)\SSH\hibernate-release-4.2.4.Final\hibernate-release-4.2.4.Final\lib\requiredantlr-2.7.7.jar dom4j-1.6.1.jar hibernate-commons-annotations-4.0.2.Final.jar hibernate-core-4.2.4.Final.jar hibernate-jpa-2.0-api-1.0.1.Final.jar javassist-3.15.0-GA.jar jboss-logging-3.1.0.GA.jar jboss-transaction-api_1.1_spec-1.0.1.Final.jar ②. 在類路徑下加入 hibernate.cfg.xml 文件, 在其中配置 hibernate 的基本屬性 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate./hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <!-- 配置hibernate的基本屬性 --> <!-- 方言 --> <property name="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property> <!-- 是否顯示及格式化SQL --> <property name="hibernate.show_sql">true</property> <property name="hibernate.format_sql">true</property> <!-- 生成數(shù)據(jù)表的策略 --> <property name="hibernate.hbm2ddl.auto">update</property> <!-- 二級緩存相關 --> </session-factory> </hibernate-configuration> ③. 建立持久化類, 和其對應的 .hbm.xml 文件 新建Employee.java和Department.java生成相應的.hbm.xml ④. 和 Spring 進行整合 i. 加入 c3p0 和 MySQL 的驅(qū)動 c3p0,加jar包,E:\編程開發(fā)\SSH 相關軟件\jar包\c3p0-0.9.1.2.bin\c3p0-0.9.1.2\libc3p0-0.9.1.2.jar MySQL ,加jar包,E:\編程開發(fā)\SSH 相關軟件\jar包\mysql-connector-java-5.1.7\mysql-connector-java-5.1.7mysql-connector-java-5.1.7-bin.jar ii. 在 Spring 的配置文件中配置: 數(shù)據(jù)源, SessionFactory, 聲明式事務 /SSH/config/applicationContext.xml<!-- 導入資源文件 --> <context:property-placeholder location="classpath:db.properties"/> <!-- 配置 C3P0 數(shù)據(jù)源 --> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> <property name="user" value="${jdbc.user}"></property> <property name="password" value="${jdbc.password}"></property> <property name="driverClass" value="${jdbc.driverClass}"></property> <property name="jdbcUrl" value="${jdbc.jdbcUrl}"></property> <property name="initialPoolSize" value="${jdbc.initPoolSize}"></property> <property name="maxPoolSize" value="${jdbc.maxPoolSize}"></property> </bean> <!-- 配置 SessionFactory --> <bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> <property name="dataSource" ref="dataSource"></property> <property name="configLocation" value="classpath:hibernate.cfg.xml"></property> <property name="mappingLocations" value="classpath:com/liumw/ssh/entities/*.hbm.xml"></property> </bean> <!-- 配置 Spring 的聲明式事務 --> <!-- 1. 配置 hibernate 的事務管理器 --> <bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory"></property> </bean> <!-- 2. 配置事務屬性 --> <tx:advice id="txAdvice" transaction-manager="transactionManager"> <tx:attributes> <tx:method name="get*" read-only="true"/> <tx:method name="lastNameIsValid" read-only="true"/> <tx:method name="*"/> </tx:attributes> </tx:advice> <!-- 3. 配置事務切入點, 再把事務屬性和事務切入點關聯(lián)起來 --> <aop:config> <aop:pointcut expression="execution(* com.liumw.ssh.service.*.*(..))" id="txPointcut"/> <aop:advisor advice-ref="txAdvice" pointcut-ref="txPointcut"/> </aop:config> ⑤. 啟動項目, 會看到生成對應的數(shù)據(jù)表 |
|