<!--声明解析xml文件的DTD文档位置,DTD是document Type definition的缩写,既文档类型定义,
xml解析器使用dtd文件来检索文件的合法性,第二行声明的hibernate-configuration-3.0.dtd可以再hibernate3.1.3软件包中的src/org/hibernate
目录中找到此文件-->
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<!--声明hibernate的配置文件开始-->
<hibernate-configuration>
<!--表明以下的配置是针对session-factory配置的,sessionFactory是hibernate中的一个类,这个类主要负责保存hibernate的配置信息
以及对session的操作-->
<session-factory>
<!-- <property name="hihernate.connection.url">jdbc:microsoft:sqlserver://localhost:1433/hihernate_test</property>
<property name="hibernate.connection.driver_class">com.microsoft.jdbc.sqlserver.SQLServerDriver</property>
<property name="hibernate.connection.username">czp</property>
<property name="hibernate.connection.password">czp</property>
<property name="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</property>
<property name="hibernate.show_sql">true</property>
<property name="current_session_context_class">thread</property>
-->
<property name="hibernate.connection.url">jdbc:mysql://localhost/hibernate_one2one_pk</property>
<!--配置数据库的驱动程序,hibernate在连接数据库时,需要用到数据库的驱动程序,本书中用到的是MYSOL的驱动程序mysql-connector-java-3.1.13-bin.jar,
这个驱动程序已经在第一章中作为jar包,加入了项目的构建途径中,com.mysql.jdbc.Driver是其中的一个类,在Driver。class文件中(在com。mysql。jdbc下)如果想看
源代码,可以设置指向下载的MYSQL的源代码-->
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">czp</property>
<!-- 数据库连接池的大小-->
<property name="hibernate.connection.pool.size">20</property>
<!-- 指示hibernate使用的数据库方言,就是要用hibernate连接哪种类型的数据库服务器。如MYSQL,ORACLE等,每个数据库都有方言,
hibernate已经为大多数数据库指明了方言-->
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<!--是否在后台显示hibernate用到的sql语句,开发时设置为true,便于差错,项目部署后可以设置为false,提高运行效率-->
<property name="hibernate.show_sql">true</property>
<property name="hbm2ddl.auto">update</property>
<!--jdbc.fetch_size是指hibernate每次从数据库中取出并放到jdbc的statement中的记录条数。它的值越大,读数据库的次数越少,速度越快。-->
<property name="jdbc.fetch_size">50</property>
<!--jdbc.batch_size是指hibernate批量插入。删除和更新时每次操作的记录数。越大则批量操作的向数据库发送sql的次数越少,速度就越快,同样耗用内存就越大-->
<property name="jdbc.batch_size">25</property>
<!--jdbc.use.scrollable_resultset是否允许hibernate用jdbc的可滚动结果集。对分页时设置非常有帮助-->
<property name="jdbc.use.scrollable_resultset">false</property>
<!--connection.useUnicode连接数据库时是否使用Unicode编码-->
<property name="connection.useUnicode">true</property>
<!--connection.characterEncoding连接数据库时的数据的传输字符集编码方式,最好设置为gbk,用gb2312有的字符不全-->
<property name="connection.characterEncoding">gbk</property>
<mapping resource="com/czp/hibernate/Person.hbm.xml" />
<mapping resource="com/czp/hibernate/IdCard.hbm.xml" />
</session-factory>
</hibernate-configuration>