Tags » ORM

Type Safe Queries for JPA's Native Query API

When you’re using JPA – sometimes – JPQL won’t do the trick and you’ll have to resort to native SQL. From the very beginning, ORMs like Hibernate kept an open “backdoor” for these cases and offered a similar API to… 1,387 more words

Sql

First tractable encoding of ORM conceptual data models

For (relatively) many years I’ve been focusing on as-expressive-as-possible languages to represent information and knowledge, including the computationally impractical full first order logic, because one would/should want to be as precise as possible and required to represent the subject domain in an ontology and universe of discourse for the application in a conceptual data model. 581 more words

Description Logics

Jade VS Ocean Master (Convergence)

Jade from New Earth fights Ocean Master from the Flashpoint universe.

– Convergence – Justice League #2

DC

Sailing on the Sea - part 1

Hey guys! Welcome to another post of this blog.
I am not having much time to write frequently, but I will try keeping writing.

On this post, I am starting a series about Sea, and I hope it helps me to keep writing new posts. 823 more words

Angularjs

Object Relational Mapping

Introduction

The understanding over Object Relational Mapping, or ORM, is fundamental to any good programmer. There are extremely few situations where its usage isn’t recommended, if any at all. 1,587 more words

C#

ORM(Object Relation Mapping)

前言

对象关系映射,是一种完成对象模型到关系模型的映射技术。就是一种把应用程序的对象数据持久化到关系数据库表的一种技术。

  • 把对象的数据转储到关系型数据库表中时就会发生如下不匹配的问题。
  • 对象模型中对象之间的关联关系与关系模型中数据库表之间的关系无法一一对应。
  • 对象模型中对象的继承关系在关系模型中无法直接表示。
  • 对象模型中对象的等值性在关系模型数据库表中表示困难。
  • 对象模型中有关联的对象之间的导航访问在关系模型中无法直接实现。

ORM 来解决上述问题。它能用面向对象的思想开发基于关系型数据库的应用程序。

Hibernate

JBoss公司著名架构师Gavin King设计,开发的一个开源的ORM框架。

  • 它是连接Java应用程序和关系数据库的中间件。
  • 它对JDBC API进行了封装,负责Java对象的持久化。
  • 在分层的软件框架中它位于持久化层,封装的所有的数据访问细节,使业务逻辑层可以专注于实现业务逻辑。
  • 它是一种ORM工具,能够建立面相对象的域模型和关系模型的映射。

 hibernate 的核心类和接口

1,Configuration类

Configuration类是Hibernate的入口,它负责配置并启动Hibernate。Hibernate框架通过Configuration实例加载配置文件信息,然后读取指定对象关系文件的内容并创建SessionFactory实例。

2,SessionFactory接口

SessionFactory接口负责初始化Hibernate,一个SessionFactory实例对应一个数据存储源(一般就是指一个数据库)。应用程序从SessionFactory中获取Session实例。SessionFactory具有以下几个特点:

  • 线程安全,即同一个SessionFactory实例可以被应用的多个线程共享。
  • 它是重量级的,因为它需要一个很大的缓存,用来存放预定义的SQL语句以及映射元数据。
  • 30 more words
Java