zoukankan      html  css  js  c++  java
  • Hibernate(一)

    Hibernate是一个开源的ORM框架,对JDBC进行了轻量级的封装,可以使用面向对象的思维操作数据库

    轻量级的JavaEE应用的持久层解决方案,关系型数据库ORM框架

    操作Java对象,通过映射的关联操作数据库的表结构(对象属性,数据库字段 )

    ORM(Object Relational Mapping)对象关系映射

    O:JavaBean

    R:表结构

    M:XML配置文件

    通过操作对象的方式来操作数据库的表结构

    Hibernate的优点:

    1、对JDBC访问数据库的代码进行了封装,简化了DAO层的重复性代码

    2、基于JDBC的主流映射框架,优秀的ORM实现,简化了DAO层的编码

    3、性能好,轻量级框架,映射灵活,支持很多关系型数据库,从一对多到多对多的各种复杂关系

    入门

    1、导包

    (1)MySQL驱动包

    mysql-connector-java

    (2)Hibernate包 lib/required下

    antlr

    dom4j

    geronime-jta

    hibernate-commons-annotations

    hibernate-core

    hibernate-jpa

    jandex

    javaassist

    jboss-logging

    (3)日志包

    log4j(日志实现)

    slf4j(接口)

    slf4j-log4j(桥梁 映射--XML配置文件 )

    2、建表和JavaBean

    用包装类,属性和字段一致

    需要提前建表,hibernate可以映射生成表结构,但是不能生成表

    3、映射配置文件 hbm.xml

    JavaBean有多少个就有多少映射文件hbm.xml,JavaBean和映射文件一一对应

    (1)在JavaBean所在的包下创建映射的配置文件    类名.hbm.xml

    xml配置文件引入约束,引入3.0,4.0不向下兼容

    不能上网需要配置,关闭xml再次打开会有提示

    (2)映射配置文件

    <hibernate-mapping>
        <class name="com.guojie.domain.Customer" table="cst_customer">
            <!-- 配置id,其中name是JavaBean的属性,column是表的字段 -->
            <id name="cst_id" column="cst_id">
                <!-- 主键生成策略 -->
                <generator class="native" />
            </id>
    
            <!-- 配置其他属性 -->
            <property name="cust_name" column="cust_name" />
        </class>
    </hibernate-mapping>

    4、核心配置文件cfg.xml

    <hibernate-configuration>
        <!-- 一个数据库对应一个sessionFactory -->
        <session-factory>
            <!-- 必须配置的参数5个:4大参数,方言 -->
            <property name="hibernate.connection.driver.class">com.mysql.jdbc.Driver</property>
            <property name="hibernate.connection.url">jdbc:mysql:///hibernate-demo</property>
            <property name="hibernate.connection.username">root</property>
            <property name="hibernate.connection.username">root</property>
            <!-- 数据库方言 -->
            <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
            <!-- 映入配置映射文件 映射配置文件右键--路径去掉com包之前的-->
            <mapping resource="com/guojie/domain/Customer.hbm.xml" />
        </sessionFactory>
    </hibernamte-configuration>

    5、入门程序

    有志者,事竟成,破釜沉舟,百二秦关终属楚;苦心人,天不负,卧薪尝胆,三千越甲可吞吴。
  • 相关阅读:
    单元测试课堂练习
    软件工程个人作业02
    软件工程个人作业01
    构建之法提问
    大道至简-第七、八章-心得体会
    06-接口与继承 动手动脑及验证
    大道至简-第六章-心得体会
    随机生成10个数,填充一个数组,然后用消息框显示数组内容,接着计算数组元素的和,将结果也显示在消息框中。
    大道至简-第五章-心得体会
    字符串加密
  • 原文地址:https://www.cnblogs.com/1989guojie/p/8203200.html
Copyright © 2011-2022 走看看