Hibernate框架介绍以及入门 【二】Hibernate的常见配置

Hibernate框架介绍以及入门 【二】

Hibernate的常见配置

一、关于XML提示的配置

1、配置hibernate-mapping-3.0.dtd - XML

在这里插入图片描述
配置这三个地方
第一个;location
在这里插入图片描述
第二个:URL
第三个:
在这里插入图片描述

在这里插入图片描述

2、配置hibernate-configuration-3.0.dtd - XML

在这里插入图片描述
第二个:URL
第三个:
其它步骤与上面类似

完整代码:

二、关于hibernate映射的配置

映射
在这里插入图片描述

1、【class标签的配置】

这个标签是来建立类与表(数据库)的映射关系
属性:
name:类的一个全路径
table: 表名(类名如果和表名一致那么table可以省略)
catalog:数据库名

2、【id标签的配置】

标签用来建立类中的属性
name:类当中的属性名
column:表中的字段(类当中的属性名和表当中的字段名如果一致则column省略)
length:长度
type:类型

3、【property标签的配置】

标签用来建立类中的普通属性与表的字段的对应关系:
属性:
name:类当中的属性名
column:表中的字段
length:长度(建表的时候指定长度)
type: 类型 type=“string”
在这里插入图片描述
或者可以添加一个子标签
在这里插入图片描述
一般情况下都可以自动转换
not-null: 设置是否允许为空
unique:设置是否是唯一的
在这里插入图片描述

Hibernate的核心配置方式
一种方式:属性文件的方式:hibernate.properties
—》hibernate.connection.driver_class=com.mysql.jdbc.Driver
—》hibernate.show_sql=true
与下面的第二种方式效果一样

以上属性文件的方式不能引入映射文件的方式(手动编写代码去加载映射文件)

二种方式:XML文件的方式:hibernate.cfg.xml
如下

三、核心的配置hibernate.cfg.xml

配置
在这里插入图片描述

配置的详细分解:

(1)必须的配置
链接数据库的基本参数
a、驱动类
b、URL路径
c、用户名
d、密码
e、方言
(2)可选的配置
a、显示SQL语句:hibernate.show_sql
b、格式化SQL语句:hibernate.format_sql
c、自动建表:hibernate.hbm2ddl.auto
none:不使用hibernate的自动建表
create:如果数据库当中已经有表了会删除已有表,重新创建,如果没有表那么就新建表
在这里插入图片描述
create-drop:数据库当中已经有表了会删除已有表,执行操作,执行完之后会删除这个表,如果没有表,会新建一个,使用完了删除该表。
在这里插入图片描述
设置好该项的时候需要关闭工厂sessionFactory.close();
在java代码当中
在这里插入图片描述
update:如果数据库当中有表,使用原有的表,如果没有表,创建一个新表(更新表结构)
在这里插入图片描述
java当中的变量和表当中的相同如果不同时不会报错会创建新的列
在这里插入图片描述
validate:如果没有表,不会创建表。只会使用数据库当中原有的表。(校验映射和表的结构)
在这里插入图片描述
java当中的变量必须和表当中的相同如果不同则会报错
在这里插入图片描述
(3)映射文件的引入
引入映射文件的位置
hibernate.cfg.xml
在这里插入图片描述

测试代码:

/*
 * Hibernate入门案例
 */
public class HibernateDemo01 {
	@Test
	// 保存客户的案例
	public void demo01() {
		// 1、加载Hibernate核心配置文件
		Configuration configuration = new Configuration().configure();// 该方法加载了Customer.hbm.xml
		// 2、创建SessionFactory对象:类似于JDBC中的链接池
		SessionFactory sessionFactory = configuration.buildSessionFactory();// sessionFactory工厂
		// 3、通过SessionFactory获取到Session对象:类似于我们JDBC中的Connection
		Session session = sessionFactory.openSession();// Hibernate以及和mysql数据库建立起链接
		// 4、手动开启事务:
		Transaction transaction = session.beginTransaction();
		// 5、编写代码
		Customer customer = new Customer();
		customer.setCust_name("张三");
		session.save(customer);
		// 6、事务提交
		transaction.commit();
		// 7、资源释放
		session.close();
	}
}
原创文章 76 获赞 151 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_44757034/article/details/105470730
今日推荐