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使编程更加面向对象化。





版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/118603.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java高性能文件缓存_java缓存机制

    java高性能文件缓存_java缓存机制转载地址:http://blog.csdn.net/madun/article/details/8569860最近再ITEYE上看到关于讨论JAVA缓存技术的帖子比较多,自己不懂,所以上网大概搜了下,找到一篇,暂作保存,后面如果有用到可以参考。此为转贴,帖子来处:http://cogipard.info/articles/cache-static-files-with-jnotify-and-eh…

    2022年10月4日
    0
  • ArcGIS二次开发及应用学习的最佳网站

    ArcGIS二次开发及应用学习的最佳网站http://i.youku.com/gisxiaotian里面有大量的ArcGIS二次开发及应用的视频教程,作者会定期的上传ArcGIS教程,看了绝对受益匪浅!

    2022年7月23日
    7
  • css 滤镜之AlphaImageLoader「建议收藏」

    css 滤镜之AlphaImageLoader「建议收藏」CreateTime–2017年12月25日17:05:37Author:Marydonie滤镜特效之AlphaImageLoader作用:用于设置背景图片特效样式使用条件:IE8及以下

    2022年7月3日
    16
  • 用户行为路径分析报告_spark用户行为分析

    用户行为路径分析报告_spark用户行为分析请看题:已知用户行为表tracking_log,大概字段有:(user_id用户编号,op_id操作编号,op_time操作时间)要求:统计每天符合以下条件的用户数:A操作之后是B操作,AB操作必须相邻。生成数据,可以在sqlfiddle中测试:createtabletracking_log(idintprimarykeyAUTO_INCREMENT,user_idintnotnull,op_idchar(4)notnull,op

    2022年8月24日
    6
  • 服务器为什么要封海外,UDP攻击是什么「建议收藏」

    服务器为什么要封海外,UDP攻击是什么「建议收藏」为什么要封海外:总所周知,目前国内的大攻击大多都来自海外,因为国外的攻击成本比国内会低很多,一旦发起了攻击,并不容易找到攻击的源头。国外的家用带宽能达到千M口,咱们国内的百M口,相当于一只外国肉鸡能顶我们国内好几台肉鸡,那这个量是不得了的,而且国内的网站几乎很少有国外用户访问,目前封海外是国内的一大趋势。UDP攻击是什么:UDP攻击全称:UDP淹没攻击(UDPFloodAttack)。UDP淹没攻击是导致主机拒绝服务的一种攻击,属于带宽类攻击。UDP是一种无连接的协议,不需要用任何程序建立连接..

    2022年10月2日
    0
  • java 泛型详解-绝对是对泛型方法讲解最详细的,没有之一「建议收藏」

    java 泛型详解-绝对是对泛型方法讲解最详细的,没有之一「建议收藏」对java的泛型特性的了解仅限于表面的浅浅一层,直到在学习设计模式时发现有不了解的用法,才想起详细的记录一下。本文参考java泛型详解、Java中的泛型方法、 java泛型详解1.概述泛型在java中有很重要的地位,在面向对象编程及各种设计模式中有非常广泛的应用。什么是泛型?为什么要使用泛型?泛型,即“参数化类型”。一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传

    2022年7月8日
    13

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号