zoukankan      html  css  js  c++  java
  • 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>
    	
    
  • 相关阅读:
    CSS中float与A标签的疑问
    常用的Css命名方式
    div css 盒子模型
    HTML初级教程 表单form
    Redis学习记录(二)
    Redis学习记录(一)
    Java源码——HashMap的源码分析及原理学习记录
    java编程基础——从上往下打印二叉树
    java编程基础——栈压入和弹出序列
    java基础编程——获取栈中的最小元素
  • 原文地址:https://www.cnblogs.com/zxfei/p/11111787.html
Copyright © 2011-2022 走看看