前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >Hibernate配置文件

Hibernate配置文件

作者头像
全栈程序员站长
发布于 2022-07-12 09:28:49
发布于 2022-07-12 09:28:49
64700
代码可运行
举报
运行总次数:0
代码可运行

大家好,又见面了,我是全栈君,祝每个程序员都可以多学几门语言。

进入Java的学习,没少接触配置文件,尤其学习SSH时,配置文件尤其多,Struts配置文件Struts.xml,Spring配置文applicationContext.xml,Hibernate配置文件Hibernate.properties、hibernate.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文件则必须在程序中通过编码载入映射文件。

3,Hibernate.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,样例

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<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.cn/118603.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021年12月,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
20 个 Laravel Eloquent 必备的实用技巧
Eloquent ORM 看起来是一个简单的机制,但是在底层,有很多半隐藏的函数和鲜为人知的方式来实现更多功能。在这篇文章中,我将演示几个小技巧。
猿哥
2019/07/25
1.2K0
3分钟短文:Laravel 模型一对一关联关系这俩啥区别
本期我们把目光投向laravel模型的关联关系上。框架提供的关联关系,有很多种,其中对于一对一的关系, 有两个写法,一个是 belongsTo,一个是 hasOne,这俩到底啥区别,本文就来说一说。
程序员小助手
2020/09/10
2.7K0
3分钟短文:说说Laravel模型中还算常用的2个“关系”
上一章我们介绍了比较简单的laravel模型关联关系中的一对一,介绍了关联操作方法。
程序员小助手
2020/10/13
2.1K0
3分钟短文:说说Laravel模型中还算常用的2个“关系”
跟我一起学Laravel-EloquentORM进阶部分
假设User模型关联了Phone模型,要定义这样一个关联,需要在User模型中定义一个phone方法,该方法返回一个hasOne方法定义的关联
用户2131907
2019/02/27
4K0
opencart3调用三级菜单level 3 sub categories
  Opencart 3的menu菜单默认只调用一级和二级菜单,但很多电商网站类目复杂,三级菜单一般都是需要的,甚至更深,那么如何调用三级菜单level 3 sub categories呢?ytkah有一些思路可以参考一下。
ytkah
2022/03/14
5370
opencart3调用三级菜单level 3 sub categories
3分钟短文:说说Laravel模型关联关系最单纯的“一对一”
关系型数据库提供了非常好用的数据关联绑定模式,使用SQL语句可以方便地进行关联数据查询和操作。
程序员小助手
2020/10/12
2K0
3分钟短文:说说Laravel模型关联关系最单纯的“一对一”
ECSHOP学习笔记
1、根目录:前台程序文件 2、admin:后台程序文件夹    --根目录:后台程序文件  *.php文件    --help\zh_cn:各功能的帮助文件 *.xml文件    --images:后台页面用图片    --includes:后台公用文件和函数    --js:后台用js脚本    --styles:后台用样式表    --templates:后台页面模板  *.htm文件 3、api:调用API的系统公用函数 4、cert:存放证书的文件夹 5、data:数据连接设置等,包括各种广告的上传图片等    --afficheimg:首页flash广告图片    --brandlogo:品牌logo 6、images:上传商品图片文件夹,按日期分目录    --200902:按月份划分商品图片    --upload:上传文件夹,包括file、flash、image和media 7、includes:前台公用文件和函数    --codetable:语言对应的代码表    --fckeditor:开源html文本编辑器    --modules\convert:shopex转换文件    --modules\cron:如自动上下架、ip删除等函数    --modules\integrates:整合各种插件和函数基础类    --modules\payment:各种支付接口插件    --modules\shipping:各种送货方式插件 8、install:系统安装文件夹,用后请删除 9、js:前台用js脚本    --calendar:日历控件 10、languages:语言文件    --zh_cn:简体中文语言文件,存储简体中文下使用的函数变量等    --zh_tw:繁体中文语言文件,存储繁体中文下使用的函数变量等 11、temp:存放临时缓存等文件 12、themes:模板文件夹,可以随意拷贝模板样式 13、wap:手机浏览程序    --includes;公用文件和函数    --templates:页面模板  *.wml文件。
Java架构师必看
2021/03/22
7.1K0
TP6.0 一对一模型关联 belongsTo 相对关联(反向关联)
1. 创建数据表 ---- 一对一反向关联使用率很高 附表关联主表称为反向关联,又称为相对关联(tp官方手册这样叫) -- 分类表 CREATE TABLE `category` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键id', `name` varchar(255) DEFAULT NULL COMMENT '分类名称', `sort` int(11) DEFAULT NULL COMMENT '分类排序', PRIMAR
很酷的站长
2023/02/17
1.1K0
TP6.0 一对一模型关联 belongsTo 相对关联(反向关联)
Laravel之Eloquent ORM
Active Record 是一种数据访问设计模式,它可以帮助你实现数据对象Object到关系数据库的映射。应用Active Record时,每一个类的实例对象唯一对应一个数据库表的一行(一对一关系)。你只需继承一个abstract Active Record 类就可以使用该设计模式访问数据库,其最大的好处是使用非常简单
唐成勇
2019/05/26
2K0
3分钟短文 | Laravel如何改造复杂的多表联合查询,这很高效!
今天我们来说一下laravel框架里最常用的数据库模型操作,特别是功能复杂的应用程序, 往往会拆分出许多的业务表,关联表,在时间和空间上进行权衡。
程序员小助手
2020/08/14
1.2K0
10 关联模型《ThinkPHP6 入门到电商实战》
关联模型指在 tp 中使用模型对多个数据表进行关联。例如一个主账户表与一个账户信息表进行关联,此时两者关联后可以更加简便的进行操作,使代码更加清晰,操作更加简便。
1_bit
2022/10/04
8420
10 关联模型《ThinkPHP6 入门到电商实战》
TP6.0 模型的关联删除
1、在删除文章的同时删除下面的评论 2、 删除用户的同时删除用户的多条评论和多条操作日志
很酷的站长
2023/01/02
8690
TP6.0 模型的关联删除
Laravel5.2之模型关联预加载
说明:本文主要说明Laravel Eloquent的延迟预加载(Eager Loading),使用延迟预加载来减少MySQL查询次数。同时,会将开发过程中的一些截图和代码黏上去,提高阅读效率。
botkenni
2022/01/10
2.6K0
Laravel5.2之模型关联预加载
Laravel5.2之Seeder填充数据小技巧
说明:本文主要聊一聊Laravel测试数据填充器Seeder的小技巧,同时介绍下Laravel开发插件三件套,这三个插件挺好用哦。同时,会将开发过程中的一些截图和代码黏上去,提高阅读效率。
botkenni
2022/01/10
3.6K0
Laravel5.2之Seeder填充数据小技巧
【实战】Tp5+小程序(二)--接口编写
ThinkPHP5 从入门到深入学习,结合实战项目深入理解 ThinkPHP5 的特性和使用方法。编写完成简单的基于 RESTFul 接口,实现相应功能,掌握控制器、模型、异常处理、数据校验的使用。
程序小工
2018/09/12
8K0
深入理解 Laravel Eloquent(三)——模型间关系(关联)
Eloquent 是一个 ORM,全称为 Object Relational Mapping,翻译为 “对象关系映射”(如果只把它当成 Database Abstraction Layer 数组库抽象层那就太小看它了)。所谓 “对象”,就是本文所说的 “模型(Model)”;对象关系映射,即为模型间关系。中文文档: http://laravel-china.org/docs/eloquent#relationships
竹清
2018/08/31
2.7K0
(转) Laravel Eloquent 提示和技巧
原文:https://learnku.com/articles/19876#1face4 Eloquent ORM 看起来像一个简单的机制,但在幕后,有很多半隐藏的功能和不太知名的方法来实现更多。在本文中,我将向您展示一些技巧。
mafeifan
2019/03/12
1.6K0
(转) Laravel Eloquent 提示和技巧
【实战】Tp5+小程序(三)--微信登录与令牌
ThinkPHP5 从入门到深入学习,结合实战项目深入理解 ThinkPHP5 的特性和使用方法。深入学习 api 开发,学习微信登录和令牌的相关知识,并理解微信登录流程,完成与微信开放 api 之间的数据交互,完善项目的相应功能。 理解第三方登录授权的 code 和 token 交互过程。
程序小工
2018/09/12
8.7K0
【实战】Tp5+小程序(三)--微信登录与令牌
laravel生成无限级分类
无限级分类是很常见的功能,算法的好坏对于获取分类树的性能起到决定性的作用。尤其当分类数据和层级多时,一个糟糕的算法将使服务器不堪重负
章鱼喵
2019/05/06
2.9K0
laravel生成无限级分类
ThinkPHP6.0学习笔记-模型操作
模型的数据字段和对应的数据表字段是对应的,默认会自动获取(以及类型),自动获取的过程会加一次查询操作(浪费资源),thinkphp支持自定义字段信息。
Mirror王宇阳
2020/11/13
4K0
推荐阅读
相关推荐
20 个 Laravel Eloquent 必备的实用技巧
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文