Hibernate ORM框架的简单介绍
来源:互联网 发布:tensorflow教程pdf 编辑:程序博客网 时间:2024/05/22 13:31
本文简要介绍JavaWeb三层架构、Hibernate以及ORM基本概念。
一、JavaWeb三层架构
JavaWeb三层架构分别为:
Web层:表示层,主要的架构模式为MVC(Model View Controller,模型-视图-控制器),主要框架有:Struts2和SpringMVC;
Service层:业务逻辑层,主要框架有:Spring;
Dao层:数据访问层,即数据持久化层,主要框架有:Hibernate和MyBatis(前身是iBATIS)。
常用的两种框架组合:
SSH:Struts2 + Spring + Hibernate
SSM:SpringMVC + Spring + MyBatis(更流行)
二、Hibernate ORM框架简介
Hibernate的特点:
1、一个开源(LGPL V2.1)的对象关系映射(Object Relational Mapping,即ORM)框架;
2、它对JDBC进行了非常轻量级的对象封装;
3、它将Java实体类与数据库表建立映射关系,使用对象编程思维来操纵数据库,完成数据持久化的任务。
所谓数据持久化,即是将那些内存中瞬时数据保存到存储设备(外存,如硬盘)中。保存在内存中的数据是处于瞬时状态的,而保存在存储设备中的数据是处于持久状态的,持久化技术则提供了一种让数据在瞬时状态和持久状态之间进行转换的机制。
三、ORM(对象关系映射)架构模式
在用JDBC对数据库表进行CRUD操作时,会写很多底层SQL语句,这样不仅面向对象思想格格不入,也会出现一些令人头疼的问题,如:不同的数据库语法不同;同样的功能在不同的数据库中有不同的实现方式;程序过分依赖SQL对程序的移植、扩展和维护也带来不少麻烦。
ORM(Object Relational Mapping),即对象关系映射,将面向对象的编程语言和面向关系的数据库之间建立起一种映射关系,即让Java实体类和数据库表一一对应,类名和表名对应,类属性和表字段一一对应,然后就可以使用面向对象的思想来通过操纵实体类的对象即可实现对数据库表的操纵。
例如:
现有一张学生表student,有四个字段:学号id,姓名name,性别gender,年龄age:
create table student( id int primary key, name varchar(20), sex varchar(2), age int);
对应的Java实体类Student,同样有四个对应数据库表student的属性:
// 实体类public class Student { // 建议使用包装类而不是基本数据类型 private Integer id; private String name; private String sex; private Integer age; public Student() { } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; }}
学生表student中有两条数据:
假设要求查询学号为1001的学生:
若编写SQL语句,则应是
SELECT * FROM student WHERE id = 1001;
若通过ORM架构模式,则应是
// Hibernate的Session对象类似于JDBC中的Connection对象Student student = session.get(Student.class, 1001);
这是一个非常简单的例子,后面会介绍更多的操作。
以上则是对JavaWeb三层架构、Hibernate框架和ORM架构模式的简介,更多的内容后续文章会有所介绍。
阅读全文
0 0
- Hibernate ORM框架的简单介绍
- Hibernate框架的概述:ORM&
- Hibernate 框架的搭建及简单介绍
- Orm框架介绍和常见的Android Orm框架
- Hibernate框架ORM的实现原理
- Hibernate框架ORM的实现原理
- Hibernate框架ORM的实现原理
- [转贴]Hibernate框架ORM的实现原理
- Hibernate框架ORM的实现原理松
- Hibernate框架ORM的实现原理(资料)
- Hibernate框架ORM的实现原理
- Hibernate框架ORM的实现原理
- Hibernate框架ORM的实现原理(资料)
- Hibernate框架ORM的实现原理
- hibernate框架ORM的实现原理
- Hibernate框架ORM的实现原理
- Hibernate框架ORM的实现原理(资料)
- Hibernate框架ORM的实现原理
- 请求修改矩阵乘法,能用
- 机器学习 第八周 总结 知识点
- CMake 策略(Mastering CMake 笔记)
- 多视角配准问题
- 初识redis
- Hibernate ORM框架的简单介绍
- org.springframework.util.StopWatch:简洁的耗时统计小工具
- 33.Search in Rotated Sorted Array
- Python网络爬虫基础及Requests库入门
- [LeetCode]235. Lowest Common Ancestor of a Binary Search Tree
- json数据处理
- Linux系统知识小结(一)
- [opencv学习笔记.2]用摄像头识别指定颜色
- 树莓派做人脸识别必要环境搭建