Hibernate一例

package dao;

import java.util.Date;

import org.hibernate.Hibernate;
import org.hibernate.Session;
import org.hibernate.Transaction;

import dao.po.User;

/**
* 这里做CURD工作
*
*/
public class UserDAOImpl
{
/**
* @param args
*/
public static void main(final String[] args)
{
//test1();
test2();
//test3();
}

/**
* 保存查询测试
*/
public static void test1()
{
final User u = new User();
u.setBirthday(new Date());
u.setName("北京市");
save(u);
get(1);
}

/**
* 修改一个 脱管 的对象, 这是没有先查询.
*/
public static void test2()
{
final int id = 6;
get(id);
final User u = new User();
u.setBirthday(new Date());
u.setId(id); //这里指定ID , 好修改
u.setName("重庆市");
update(u);
get(id);
}

/**
* 测试 load 强制加载
*/
public static void test3()
{
final User user = load(1);
System.out.println("查询完成:" + user.getName());
}

public static void save(final Object obj)
{
Session s = null;
Transaction t = null;
try
{
s = HibernateUtil.getSeesion();
t = s.beginTransaction();
s.save(obj);
t.commit();
}
finally
{
if (s != null)
{
s.close();
}
}
System.out.println("保存完成");
}

public static User get(final int id)
{
final Session s = HibernateUtil.getSeesion();
final User user = (User) s.get(User.class, id);
s.close();
System.out.println("查询完成:" + user.getName());
return user;
}

public static User load(final int id)
{
final Session s = HibernateUtil.getSeesion();
final User user = (User) s.load(User.class, id);

//强制加载
Hibernate.initialize(user);
s.close();

return user;
}

public static void update(final User u)
{
Session s = null;
Transaction t = null;
try
{
s = HibernateUtil.getSeesion();
t = s.beginTransaction();
s.update(u);
t.commit();
}
finally
{
if (s != null)
{
s.close();
}
}
System.out.println("修改完成");
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值