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>
    	
    
  • 相关阅读:
    很简单的在Ubuntu系统下安装字体和切换默认字体的方法
    Qt添加驱动——Qt数据库之添加MySQL驱动插件
    qt 字体的相关问题
    qt configure参数配置介绍
    Qt封装QTcpServer参考资料--QT4中构建多线程的服务器
    Qt封装QTcpServer参考资料--QTcpServer多线程实现
    Qt封装QTcpServer参考资料--QT自带QTcpServer架构分析
    Qt Creator设置多核编译(-j8参数)
    QString::​arg的用法
    《Qt数据类型》--QByteArray,QString,int,hex之间的转化
  • 原文地址:https://www.cnblogs.com/zxfei/p/11111787.html
Copyright © 2011-2022 走看看