1.my.ini一定将编码集改为utf8
2.Hibernate配置文件为:
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- 指定Spring配置文件的DTD信息 -->
- <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN"
- "http://www.springframework.org/dtd/spring-beans-2.0.dtd">
- <beans>
- <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"
- destroy-method="close" abstract="false"
- lazy-init="default" autowire="default" dependency-check="default">
- <!-- 指定连接数据库的驱动 -->
- <property name="driverClass" value="com.mysql.jdbc.Driver"/>
- <!-- 指定连接数据库的URL -->
- <property name="jdbcUrl"
- value="jdbc:mysql://localhost:3306/hbut_study?useUnicode=true&
- characterEncoding=gbk&autoReconnect=true"/>
- <!-- 指定连接数据库的用户名 -->
- <property name="user" value="root"/>
- <!-- 指定连接数据库的密码 -->
- <property name="password" value=""/>
- <!-- 指定连接数据库连接池的最大连接数 -->
- <property name="maxPoolSize" value="40"/>
- <!-- 指定连接数据库连接池的最小连接数 -->
- <property name="minPoolSize" value="10"/>
- <!-- 指定连接数据库连接池的初始化连接数 -->
- <property name="initialPoolSize" value="10"/>
- <!-- 指定连接数据库连接池的连接的最大空闲时间 -->
- <property name="maxIdleTime" value="20"/>
- </bean>
- <!-- 定义Hibernate的SessionFactory -->
- <bean id="sessionFactory"
- class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
- <!-- 依赖注入数据源,注入上面定义的dataSource -->
- <property name="dataSource" ref="dataSource"/>
- <!-- mappingResouces属性用来列出全部映射文件 -->
- <property name="mappingLocations">
- <list>
- <!-- 以下用来列出Hibernate映射文件 -->
- <value>classpath:com/hbutStudy/hbm/*.hbm.xml</value>
- </list>
- </property>
- <!-- 定义Hibernate的SessionFactory的属性 -->
- <property name="hibernateProperties">
- <props>
- <!-- 指定数据库方言 -->
- <prop key="hibernate.dialect">
- org.hibernate.dialect.MySQLDialect</prop>
- <!-- 是否根据需要每次自动创建数据库 -->
- <prop key="hibernate.hbm2ddl.auto">update</prop>
- <!-- 显示Hibernate持久化操作所生成的SQL -->
- <prop key="hibernate.show_sql">true</prop>
- <!-- 将SQL脚本进行格式化后再输出 -->
- <prop key="hibernate.format_sql">true</prop>
- </props>
- </property>
- </bean>
- <!-- 配置Hibernate的事务管理器-->
- <!-- 使用HibernateTransactionManager类,该类是PlatformTransactionManager接口类
- 针对采用Hibernate持久化连接的特定实现-->
- <bean id="transactionManager_1"
- class="org.springframework.orm.hibernate3.HibernateTransactionManager">
- <!-- HibernateTransactionManager bean需要依赖注入一个SessionFactory bean的引用 -->
- <property name="sessionFactory"><ref local="sessionFactory"/></property>
- </bean>
- <!-- 定义事务拦截器 -->
- <bean id="transactionInterceptor"
- class="org.springframework.transaction.interceptor.TransactionInterceptor">
- <!-- 事务拦截器bean需要依赖注入一个事务管理器 -->
- <property name="transactionManager" ref="transactionManager_1"/>
- <property name="transactionAttributes">
- <props>
- <prop key="insert*">PROPAGATION_REQUIRED</prop>
- <prop key="find*">PROPAGATION_REQUIRED,readOnly</prop>
- <prop key="*">PROPAGATION_REQUIRED</prop>
- </props>
- </property>
- </bean>
- <!-- 定义一个BeanPostProcessor bean
- spring提供BeanPostProcessor的实现类BeanNameAutoProxyCreator-->
- <bean class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
- <!-- 指定对满足那些bean name的bean自动生成业务代理 -->
- <property name="beanNames">
- <value>*Service_bak</value>
- </property>
- <!-- 下面定义BeanNameAutoProxyCreator所需的事务拦截器 -->
- <property name="interceptorNames">
- <list>
- <value>transactionInterceptor</value>
- <!-- 此处可以增加其它新的Interceptor -->
- </list>
- </property>
- </bean>
- </beans>
-
顶