Hibernate入门核心配置文件和orm元数据配置文件详解

框架是什么?

  • 框架是用来提高开发效率的
  • 封装了一些功能,我们需要使用这些功能时,调用即可,不用手动实现
  • 所以框架可以理解为一个半成品的项目,只要懂得如何使用这些功能即可

Hibernate是完全面向对象的顶级框架

Hibernate框架的搭建

  • 导包
  • 书写主配置文件

upgrade:升级改善

Hibernate配置文件详解

  • orm元数据配置文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC 
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">

<!-- 配置表与实体对象的关系,package属性用于填写包名,如果配置了该属性,下面的类就不用写全类名 -->
<hibernate-mapping package="">
	<!-- class元素:配置实体与表的对应关系
			name:完整类名
			table:数据库表名
	 -->
	<class name="com.fei.domain.Customer" table="cst_customer">
		<!-- id:主键映射
				name:填写主键对应属性名
				column:填写表中的主键列名
		 -->
		<id name="cust_id" column="cust_id">
			<!-- 主键生成策略 -->
			<generator class="native"></generator>
		</id>
		
		<!-- 除id主键之外的普通属性映射 
				name:填写属性名
				column(可选):填写属性对应表中的列名。默认值:使用使用属性名作为列名
				type(可选):填写列的类型(有三种类型Java数据类型、数据库类型、hibernate类型)
				not-null(可选):配置该属性是否能为空,默认false
				length(可选):配置数据库中列的长度。默认值:使用数据库类型的最大长度
		-->
		<property name="cust_name" column="cust_name"></property>
		<property name="cust_source" column="cust_source"></property>
		<property name="cust_industry" column="cust_industry"></property>
		<property name="cust_level" column="cust_level"></property>
		<property name="cust_linkman" column="cust_linkman"></property>
		<property name="cust_phone" column="cust_phone"></property>
		<property name="cust_mobile" column="cust_mobile"></property>
	</class>

</hibernate-mapping>
  • Hibernate主配置文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
	"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
	"http://www.hibernate.org/dtd/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:///web13</property>
		<property name="hibernate.connection.username">root</property>
		<property name="hibernate.connection.password">123</property>

		<!-- 数据库方言:不同的数据库中,sql语法略有区别,指定方言可以让hibernate框架在生成sql语句时,针对数据库的方言生成 
				sql99标准: DDL 定义语言 :库表的增删改查
						  DCL 控制语言 :事务、权限相关
						  DML 操纵语言 :增删改查
		-->
	    <!--MySql5.0之前的配置   -->
        <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
        <!--MySql5.0之后的配置 -->
        <property name="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</property>

		<!-- 调试:在控制台打印sql语句并格式化sql语句 -->
		<property name="hibernate.show_sql">true</property>
		<property name="hibernate.format_sql">true</property>

		<!-- 自动建表方式 :自动建表-->
		<property name="hibernate.hbm2ddl.auto">update</property>

		<!-- 映射文件:引入orm元数据,路径填写src下的路径 -->
		<mapping resource="com/fei/domain/Customer.hbm.xml" />
	</session-factory>
</hibernate-configuration>
	
posted on 2019-06-30 23:32  行之间  阅读(347)  评论(0编辑  收藏  举报