zoukankan      html  css  js  c++  java
  • 第一章-Hibernate初识

    # 第一章 Hibernate初识
    ## 1.1 什么是ORM
      ORM:(Object/Relationship Mapping),对象/关系映射。
    利用面向对象的思想编写的数据库应用程序最终都是把对象信息保存在关系型数据库中,于是需要编写很多和底层数据库相关的SQL语句。
      但是这与面向对象的思想格格不入!

      **写SQL语句有什么不好吗?**
      - 不同的数据库使用的SQL愈发不同。比如:PL/SQL与T/SQL。
      - 同样的功能在不同的数据库中有不同的实现方式。比如:分页SQL。
      - 程序过分依赖SQL对程序的移植及扩展,维护等带来很大的麻烦。
    ## 1.2 Hibernate简介
    - Hibernate是java领域的一款开源的ORM框架技术
    - Hibernate对JDBC进行了非常轻量级的对象封装

      **Hibernate在我们的应用程序中充当着什么样的角色呢?**
      举例,如下图所示:我们要开发不同的系统<br>
      ![](f0abf21f-9297-4c43-bc13-b7f00e20ee41_files/9cbcb65c-2986-48e7-aea8-48b7283e703a.jpg)

    持久化层 : 处于业务逻辑层和数据库之间的一个角色<br>
    作用 : 把程序中生成的对象持久化到数据库中,换句话说,就是把这些对象通过对象关系映射保存到数据库的表中<br>
    ## 1.3 其他主流的ORM框架技术
    - MyBtis : 前身就是著名的iBatis<br>
    - Toplink:后被Oracle收购,并重新包装为Oracle AS TopLink<br>
    - EJB:本身是JAVAEE的规范

    ## 1.4 Hibernate开发环境

    ![](f0abf21f-9297-4c43-bc13-b7f00e20ee41_files/dab4d6c9-dd10-4693-88b3-097e83159cd5.jpg)
     **hibernate tools下载地址:**
    *http://sourceforge.net/projects/jboss/files/JBossTools/JBossTools4.1.x/hibernatetools-Update-4.1.2.Final_2014-03-18_15-46-19-B706.zip/download*
    1. 添加需要的jar包,hibernate官方主页 *http://www.hibernate.org*
    - MyEclipse插件已经集成了对Hibernate开发的支持,添加其支持即可。
    - Eclipse,项目节点上单击右键,从弹出的快捷菜单上选择 MyEclipse --> Add Hibernate Capabilities --> 在弹出的“Hibernate Support for MyEclipse”对话框中选择 Hibernate 3.1 单选项 --> Next --> “Specify Hibernate database connection details”对话框中,取消复选框的选中状态,先不配置数据库连接。
    4. Hibernate 配置文件
    - 在项目中添加Hibernate配置文件,默认的文件名为:hibernate.cfg.xml。
    - MyEclipse在添加Hibernate支持的时候会自动添加相应的配置文件。
    7. 配置数据库连接信息和Hibernate的参数

    ## 1.5 编写Hibernate的步骤
    - 创建Hibernate 配置文件 hibernate.cfg.xml
    - 创建持久化类 Students.java
    - 创建对象-关系映射文件 Students.hbm.xml
    - 通过HibernateAPI编写访问数据库的代码

    ## 1.6 使用Junit进行单元测试
    - @Test:测试方法
    - @Before:初始化方法
    - @After:释放资源




  • 相关阅读:
    PAT (Advanced Level) Practice 1071 Speech Patterns (25分)
    PAT (Advanced Level) Practice 1070 Mooncake (25分)
    PAT (Advanced Level) Practice 1069 The Black Hole of Numbers (20分)
    PAT (Advanced Level) Practice 1074 Reversing Linked List (25分)
    PAT (Advanced Level) Practice 1073 Scientific Notation (20分)
    第一次冲刺个人总结01
    构建之法阅读笔记01
    人月神话阅读笔记01
    四则运算2
    学习进度条(软件工程概论1-8周)
  • 原文地址:https://www.cnblogs.com/Jxiaobai/p/6618588.html
Copyright © 2011-2022 走看看