1、ORM的优缺点
优点:提高开发效率,降低开发难度。缺点:系统层次增加,性能有一定损失。
2、HIbernate的5个核心接口:
Configuration--负责初始化时加载配置信息(hibernate.cfg.xml)并据此加载映射文件,最后创建SessionFactory对象。将读入的配置信息设置到SessionFactory对象的缓存中。
SessionFactory--负责创建session对象,SessionFactory实例是重量级对象,线程安全,一般使用单例模式创建。
Session--负责管理所有与持久化相关的操作,如数据存取、事务、对象生命周期。非线程安全,应避免多个线程公用一个Session。
Transaction--负责数据库事务,hibernate对底层事务接口进行了简单封装,利于移植。
Query和Criteria--负责hibernate的查询操作。前者适用于大多数情况,后者更适合动态查询(查询条件多变)。
3、hibernate的配置文件
两种形式:java风格;xml形式。
开发阶段一般需要配置的参数:
数据库方言、驱动、数据库连接URL、用户名&密码、显示sql,格式化sql。
4、SessionFactory的构建
public class SessionFactory{
private static org.hibernate.SessionFactory sessionFactory;
static {
try {
Configuration Configuration=new Configuration().configure("hibernate.cfg.xml");
sessionFactory = configuration.buildSessionFactory();
}catch(Exception e){
System.err.println("Error Creating SessionFactory.");
e.printStackTrace();
}
}
/**
*get a session
*/
public static Session getSession() throws HibernateException {
Session session = sessionFactory.openSession();
return session;
}
}
分享到:
相关推荐
zookeeper云的学习笔记-云的学习笔记系统-云的学习笔记系统源码-云的学习笔记管理系统-云的学习笔记管理系统java代码-云的学习笔记系统设计与实现-基于ssm的云的学习笔记系统-基于Web的云的学习笔记系统设计与实现-...
Python学习笔记--皮大庆,非常适合零基础入门。对应英文版本《How to think like a computer scientist》
学习笔记HTML-css-JS.zip学习笔记HTML-css-JS.zip学习笔记HTML-css-JS.zip 学习笔记HTML-css-JS.zip学习笔记HTML-css-JS.zip学习笔记HTML-css-JS.zip 学习笔记HTML-css-JS.zip学习笔记HTML-css-JS.zip学习笔记...
云的学习笔记-云的学习笔记系统-云的学习笔记系统源码-云的学习笔记管理系统-云的学习笔记管理系统java代码-云的学习笔记系统设计与实现-基于ssm的云的学习笔记系统-基于Web的云的学习笔记系统设计与实现-云的学习...
LaTex教程--latex排版学习笔记---入门提高.pdf
JDBC学习笔记--JDBC学习笔记JDBC学习笔记--JDBC学习笔记JDBC学习笔记--JDBC学习笔记JDBC学习笔记--JDBC学习笔记
强烈推荐《How to think like a computer scientist》,对应中文版本《Python学习笔记--皮大庆》,非常适合零基础入门。
CSL学习笔记--第二章 怎么应用CSL.docxCSL学习笔记--第二章 怎么应用CSL.docxCSL学习笔记--第二章 怎么应用CSL.docxCSL学习笔记--第二章 怎么应用CSL.docxCSL学习笔记--第二章 怎么应用CSL.docxCSL学习笔记--第二章 ...
Acegi学习笔记--Acegi详解Acegi学习笔记--Acegi详解Acegi学习笔记--Acegi详解Acegi学习笔记--Acegi详解Acegi学习笔记--Acegi详解
学习笔记----图形界面程序Qt安装及其在2410-s上的移植 学习笔记----图形界面程序Qt安装及其在2410-s上的移植 学习笔记----图形界面程序Qt安装及其在2410-s上的移植
Python学习笔记0001 - 安装与配置Python开发环境 Python学习笔记0002 - 海龟画图 - 初画图形 Python学习笔记0003 - 海龟画图 - 变量 Python学习笔记0004 - 海龟画图 - for循环 Python学习笔记0005 - 海龟画图 - ...