首页 > 代码库 > Hibernate配置文件

Hibernate配置文件

   进入Java的学习,没少接触配置文件,尤其学习SSH时,配置文件尤其多,Struts配置文件Struts.xmlSpring配置文applicationContext.xml,Hibernate配置文件Hibernate.propertieshibernate.cfg.xml

   最初接触这些配置文件时,仅仅有一个感觉:好麻烦!!总认为每做一项工作,还要考虑配置文件里须要加入?个什么标签属性的,假设没加入?或加入?错了,整个项目就无法正常执行。可是,后来随着学习的逐渐深入,即便深入的也不是非常多,体会到了这些配置文件的强大。或许这就是开源的风格——看似麻烦,可是功能强大,而且灵活。

    初步接触Hibernate,通过实现一个个简单实例,我体会到了它的长处:首先,使用Hibernate,不须要写JDBC语句,不仅提高了工作效率,代码简单了,而且它真正实现了面向对象,我们仅仅需操作对象就可以,不须要直接与数据库打交道;其次,Hibernate不涉及Sql语句,再加上Hibernate配置文件里有方言的配置,这样就提高了代码的可移植性。   

    Hibernate的长处有非常多,今后的学习中会慢慢体会。这篇博客并不是是对Hibernate长处的总结。 

    此篇博客想对Hibernate配置文件做一个简单的总结,尽仅是自己的理解。

 

1,主要作用?

Hibernate配置文件主要用于数据库连接盒Hibernate执行时所需的各种属性

2,支持形式?

第一种:Java属性格式——Hibernate.properties

另外一种:xml格式——Hibernate.cfg.xml

 

实际开发中使用Hibernate.cfg.xml配置文件比較多,由于此种配置文件能够直接对映射文件进行配置,并由Hibernate自己主动载入;而properties文件则必须在程序中通过编码载入映射文件。

3Hibernate.cfg.xml

经常使用属性:

connection.url:数据库url

Connection.username:数据库用户名;

Connection.password:数据库用户密码;

Connection.driver-class:数据库JDBC驱动;

Show-sql:是否将执行期生成的Sql输出到日志以供调试。取值true/false

Dialect:配置数据库的方言,依据底层的数据库不同产生不同的Sql语句,Hibernate会针对数据库的特性在訪问时进行优化;

Hbm2ddl.auto:在启动和停止时自己主动创建,更新或删除数据库模式。取值create/update/create-drop

Mapping resource:映射文件配置,配置文件名称必须包括其相对于跟的全路径;

Connection.datesource:JNDI数据源的名称

4,样例

<span style="font-size:18px;"><?xml version='1.0' encoding='UTF-8'?>
	<!DOCTYPE hibernate-configuration PUBLIC
	"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
	"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">


	<hibernate-configuration>
		<session-factory>
			<!--数据库驱动-->
			<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
			<!--连接字符串-->
			<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/hibernate_first</property>
			<!--连接数据库的用户名-->
			<property name="hibernate.connection.username">user</property>
			<!--数据库用户密码-->
			<property name="hibernate.connection.password">root</property>
			<!--选择使用的方言-->
			<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
			<!--显示运行的SQL语句-->
			<property name="hibernate.show_sql">true</property>
			
			<!--映射文件 -->
			<mapping resource="com/zs/hibernate/User.hbm.xml"/>
		</session-factory>
	</hibernate-configuration></span>

5,总结

Hibernate:(1)开源的对象关系映射框架;(2)对JDBC进行了轻量级对象封装,使程序猿能够使用对象编程思想来曹总数据库;(3)Hibernate能够应用在不论什么使用JDBC的场合,既能够在Java的client程序使用,也能够在sevelet/jsp的web应用中使用。总之,Hibernate使编程更加面向对象化。