您的位置:首页 > 其它

Hibernate基本概念和CRUD2

2012-12-22 17:40 190 查看
Hibernate基本概念和CRUD2
1、初始化代码(只做一次)

Configuration cfg= new Configuration();

cfg.configure(“config.cfg.xml”);

也可以通过cfg.setProperty设置属性。

SessionFactory sessionFactory =cfg.buildSessionFactory()

2、模板代码

Session session =null;Transaction tx = null;

try{

session = sessionFactory.openSession();

tx = session.beginTransaction();

//…你的代码save,delete,update,get…

tx.commit();

}catch(Exception e){

if(tx !=null)tx.rollback();throw e;

}finally{

if(session != null)session.close();

}

3、 Session的几个主要方法

1、save保存数据

2、delete,删除对象

3、update,更新对象,如果数据库中没有记录,会出现异常。

4、get,根据ID查,会立刻访问数据库。

5、Load,根据ID查,(返回的是代理,不会立即访问数据库)。

6、saveOrUpdate (根据ID和version的值来确定是save或update

4、主键生成机制

表示符生成器

描述

Increment

由hibernate自动以递增的方式生成标识符,每次增量为1

Identity

由底层数据库生成标识符。条件是数据库支持自动增长数据类型。

Sequence

Hibernate根据底层数据库序列生成标识符。条件是数据库支持序列。

Native

根据底层数据库对自动生成表示符的能力来选择identity、sequence、hilo

Uuid.hex

Hibernate采用128位的UUID算法来生成标识符。该算法

能够在网络环境中生成唯一的字符串标识符,这种策略并不流行,因为字符串类型的主键比整数类型的主键占用更多的数据库空间。

assigned

适用于自然主键。由java程序负责生成标识符。不能把setID()方法声明为

Private的。尽量避免使用自然主键。

foreign

使用另外一个相关联的对象的标示符,常和<one-to-one>联合使用

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: