zoukankan      html  css  js  c++  java
  • hibernate配置三步走

    1.导入有hibernate的required和jpa的jar包,数据库驱动jar包,日志jar包

    2.创建实体类,必须有一个属性有唯一的值

    package com.hui.hibernate;
    
    public class User {
        
        private int uid;/*hibernate要求实体类中有一个属性唯一*/
        private String username;
        private String password;
        private String address;
        
        public User() {
            // TODO Auto-generated constructor stub
        }
        
        public int getUid() {
            return uid;
        }
        public void setUid(int uid) {
            this.uid = uid;
        }
        public String getUsername() {
            return username;
        }
        public void setUsername(String username) {
            this.username = username;
        }
        public String getPassword() {
            return password;
        }
        public void setPassword(String password) {
            this.password = password;
        }
        public String getAddress() {
            return address;
        }
        public void setAddress(String address) {
            this.address = address;
        }
        
    
    }

    3.配置实体类和数据库表的映射关系,使用配置文件

    @1创建xml格式配置文件

    @2给创建的xml文件引入约束

    @3配置映射关系

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <!-- 这个文件就是hibernate配置实体类和数据库表映射关系的配置文件 -->
     3 <!-- 给hibernate配置文件引入的约束 -->
     4 <!DOCTYPE hibernate-mapping PUBLIC 
     5     "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
     6     "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
     7    
     8    <hibernate-mapping>
     9        <!--1.配置类和表的对应关系
    10        class标签
    11        name:实体类全路径名
    12        table:数据库表名  -->
    13        <class name="com.hui.hibernate.User" table="t_user">
    14            <!--2.配置实体类id和表id对应
    15            hibernate要求实体类有一个属性唯一值 
    16            hibernate要求表有字段作为唯一值 -->
    17            
    18            
    19            <!--id标签
    20            name:实体类中id属性名称 
    21            colnum:生成的表字段名称 -->
    22            <id name="uid" colnum="uid">
    23                <!--设置数据库表id增长策略 
    24                native:生成表id值就是主键且自动增长 -->
    25                <generator class="native"></generator>
    26            </id>
    27            
    28            <!--配置其他属性和表字段对应
    29            name:实体类属性名称 
    30            colnum:生成表的对应字段名称 -->
    31            
    32            <property name="username" colnum="username"></property>
    33            <property name="password" colnum="password"></property>
    34            <property name="address" colnum="address"></property>
    35            
    36        </class>
    37        
    38    </hibernate-mapping>

    4.创建hibernate核心配置文件

    @1.核心配置文件格式为xml,但是核心配置文件位置是固定的,位置必须在src下,名称必须为hibernate.cfg.xml

    @2.引入dtd约束

    @3进行相关配置hibernate操作过程只会加载核心配置文件,其他配置文件不会加载,所以应将映射关系配置文件放到核心配置文件中

    ---配置数据库信息

    ---配置hibernate信息

    ---把映射文件放引入到核心配置文件中

    <?xml version="1.0" encoding="UTF-8"?>
    <!--这是hibernate的核心配置文件  -->
    <!--引入dtd约束  -->
    <!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>
            <!--1.配置数据库信息,必须要有  -->
            <!-- 配置hibernate采用的数据库驱动,此处为mysql -->
            <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
            <!--配置数据库的url位本地的名称为 testjdbc的数据库 -->
            <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/testjdbc</property>
            <!--配置用户名  -->
            <property name="hibernate.connection.username">root</property>
            
            <!--配置密码  -->
            <property name="hibernate.connection.password">241602</property>
            <!--2.配置hibernate信息,可选配置  -->
            <!-- 输出底层的sql语句 -->
            <property name="hibernate.show_sql">true</property>
            <!-- 对底层sql语句进行格式化 -->
            <property name="hibernate.format_sql">true</property>
            <!-- update:如果已经有表,更新,如果没有,创建 -->
            <property name="hibernate.hbm2ddl.auto">update</property>
            <!--配置数据库方言
                 在mysql中实现分页关键字limit,只能用于mysql中
                oracle数据库实现分页用rownum
                让hibernate框架识别不同数据库自己特有的语句  -->
            <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
            
            <!--3.把映射关系配置文件内容放进来,必须的,通过resource引入映射关系文件内容 
            /hibernate/src/com/hui/hibernate/User.hbm.xml -->
            <mapping resource="com/hui/hibernate/User.hbm.xml"/>
            
            
            
        </session-factory>
    
    </hibernate-configuration>
    需要程序源码的可以加我微信x241602私聊。
  • 相关阅读:
    Best Practices for Using Alpha
    Android手机 Fildder真机抓包
    Android调用MediaScanner进行新产生的媒体文件扫描
    读书笔记-----Java并发编程实战(二)对象的共享
    项目经验谈---IM新消息界面刷新异常处理记录
    读书笔记-----Java并发编程实战(一)线程安全性
    OnScroll与OnTouchEvent方法的区别与联系
    View的getLeft, getRight, getTop, getBottom
    如何用DNS+GeoIP+Nginx+Varnish做世界级的CDN
    更改ubuntu mysql data目录位置
  • 原文地址:https://www.cnblogs.com/huipengbo/p/6992170.html
Copyright © 2011-2022 走看看