2017年1月8日

{LJ?Dragon}【标题】Hibernate基础知识简介_01

{LJ?Dragon}【Links】Hibernate注解详解

{LJ?Dragon}【Daily】特种部队2,Running.......

【Hibernate学习笔记】

相关链接:

My Study Portfolio—Hibernate

0.

 

06.

 

1.

 

07.

 

2.

 

08.

 

3.

 

09.

 

4.

 

10.

 

5.

     

 

大纲:

 

Hibernate的简介

Hibernate(冬眠):对类进行实例化操作,这里类指的是之前说的javabean,javabean正确的叫法:实体类 entity

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

Hibernate具体实现的操作:

Hibernate的是开源轻量级的框架,对jdbc的代码进行封装,

程序员不需要写底层的sql语句的代码,就可以实现对数据库的操作;

实现对数据库的crud操作

Javaee中有三层结构:

Web层:struts2

Service层:spring

持久化层(dao层):hibernate框架

Jdbc底层代码的步骤:

1 加载驱动

2 创建连接

3 对sql语句进行预编译操作

4 设置参数,执行sql语句

5 释放资源

什么是ORM?

ORM: object relational mapping , 对象关系映射

ORM 就是通过将Java对象映射到数据库表,通过操作Java对象,就可以完成对数据表的操作

做操作时候,有实体类 ,有数据库表

在hibernate中,让实体类和数据库进行映射对应的关系(配置文件配置)

操作实体类就相当于操作数据库表中的数据

 

图形过程分析:

流行的数据库框架

JPA Java Persistence API.JPA通过JDK 5.0注解或XML描述对象-关系表的映射关系(只有接口规范)

  • Hibernate 最流行ORM框架,通过对象-关系映射配置,可以完全脱离底层SQL
  • MyBatis 本是apache的一个开源项目 iBatis,支持普通 SQL查询,存储过程和高级映射的优秀持久层框架
  • Apache DBUtils
  • Spring JDBCTemplate

Hibernate的优点

  • Hibernate对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码
  • Hibernate是一个基于jdbc的主流持久化框架,是一个优秀的orm实现,它很大程度的简化了dao层编码工作
  • Hibernate使用java的反射机制,而不是字节码增强程序类实现透明性
  • Hibernate的性能非常好,因为它是一个轻量级框架。

    映射的灵活性很出色。它支持很多关系型数据库,从一对一到多对多的各种复杂关系

Hibernate的版本

Hibernate 3.x 4.x 5.x

从最原始的开始:

1、下载hibernate3.x的开发包 (3.6.10)

官方下载:http://sourceforge.net/projects/hibernate/files/hibernate3/

1.1目录介绍:

 

1.2相关Jar包介绍

 

HIBERNATE 01的更多相关文章

  1. Rhythmk 学习 Hibernate 01 - maven 创建Hibernate 项目之 增删改查入门

    1.环境: Maven :3.1.1 开发工具:Spring Tool Suite 数据库 : Mysql  5.6 2.项目文件结构 文件代码: 2.1 .pom.xml <project x ...

  2. Hibernate-ORM:01.Hibernate恍如隔世般初见

    ------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 对于学过ORM框架的朋友来说,上手HibernateORM来说,既熟悉有有一点陌生,熟悉无非是灵魂相通,陌生的 ...

  3. Hibernate 系列 01 - 框架技术 (介绍Hibernate框架的发展由来)

    引导目录: Hibernate 系列教程 目录 本篇导航: 为什么学习框架技术 框架的概念 主流框架的介绍 1.为什么学习框架技术 如何制作一份看上去具有专业水准的PPT文档呢?一个简单的方法就是使用 ...

  4. 01 Hibernate错题分析

    解析: 此题目考查的是对Hibernate中交叉连接的理解.HQL支持SQL风格的交叉连接查询,交叉连接适用于两个类之间没有定义任何关联时.在where字句中,通过属性作为筛选条件,如统计报表数据.使 ...

  5. 01.Hibernate入门

    前言:本文用一个简单的Hibernate应用程序例子来引领初学者入门,让初学者对Hibernate的使用有一个大致的认识.本文例子使用了MySQL数据库.Maven管理工具.Eclipse开发工具,创 ...

  6. Hibernate逍遥游记-第5章映射一对多-01单向<many-to-one>、cascade="save-update"、lazy、TransientObjectException

    1. <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hi ...

  7. Hibernate基本应用01

    一. Hibernate简介 1.1 Hibernate介绍 Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全 ...

  8. Exception 01 : org.hibernate.engine.jndi.JndiException: Error parsing JNDI name [foo]

    异常名称 org.hibernate.engine.jndi.JndiException: Error parsing JNDI name [foo] 异常截屏 异常详细信息 org.hibernat ...

  9. 01.Hibernate快速入门

    第一步:下载Hibernate5的运行环境 https://sourceforge.net/projects/hibernate/files/hibernate-orm/ 第二步:在数据库创建表 Cr ...

随机推荐

  1. Mysql 操作手册

    mysql操作手册 版本:5.6.16mysql linux安装基本步骤:#rpm -e --nodeps mysql-lib-5.1.*#rpm -ivh mysql-server#rpm -ivh ...

  2. 从1到n整数中1出现的次数

    题目如题 如 5 中1出现的次数 为1 12中1出现的次数为5 public class NumberOf1Between1AndN { /* *输入一个整数n,求从1到n这N个十进制表示中1出现的次 ...

  3. new、delete用法(一)

    第一部分:new的使用: #define DEBUG_NEW new(THIS_FILE, __LINE__)解释 THIS_FILE:表示当前类所处的文件名: __LINE__:表示分配内存操作所在 ...

  4. free() 是如何释放不同内存区块大小的指针?

    最初是在知乎上看到这个问题的C++ delete[] 是如何知道数组大小的?,我也挺好奇,所以就作了一番工作. 申请内存时,指针所指向区块的大小这一信息,其实就记录在该指针的周围看下面这段代码: #i ...

  5. 接触.net5年了,感觉自己的知识面很狭隘。

    08年毕业找工作期间开始接触网页开发,由于在学校了混了4年时间,我只能从html标记语言开始学习,后来应聘到一个网站建设公司,开始学习ps.Dreamweaver和asp.由于基础薄弱,一个月后离开了 ...

  6. 网站开发常用jQuery插件总结(九)侧边栏插件pageslide

    一.pageslide插件功能 实现现实隐藏侧边栏的功能.插件可以读取另个一html,也可以是当前页面中的元素. 二.pageslide官方地址 http://srobbin.com/jquery-p ...

  7. quick-x 计时器的写法

    local scheduler = require("framework.scheduler") --计时器 function MainScene:recoderTime() pr ...

  8. phpcms v9指定栏目调用系列教程

    调用指定栏目名称: {$CATEGORYS[栏目ID]['catname']} 调用指定栏目url {$CATEGORYS[栏目ID]['url']} 调用指定栏目栏目图片 {$CATEGORYS[栏 ...

  9. 原生js实现吸顶导航和回到顶部特效

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. asp.net关于Cookie跨域(域名)的问题

    Cookie是一个伟大的发明,它允许Web开发者保留他们的用户的登录状态.但是当你的站点有一个以上的域名时就会出现问题了.在Cookie规范上 说,一个cookie只能用于一个域名,不能够发给其它的域 ...