遨游Hibernate之二
来源:互联网 发布:会员推广系统源码 编辑:程序博客网 时间:2024/04/30 18:02
说明一下,本例子源码选自<<Hibernate 开发及整合应用大全>>,略有改动.
这节要讲的是如何用Hibernate实现增删修查四个功能,本例在第一节的基础上加上一个DAOImp.java
源码如下:
/** *//**
* @author tiger Create Date 2006-11-25
*
* Blog: tiger.ptuhaiwai.com
*/
package persistence;
import java.util.List;
import model.Student;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.SessionFactory;
public class DAOImp ...{
static Session session = null;
static SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
/**//*--------------创建新的学生对象--------------*/
public static void createStu(Student stu)...{
try ...{
session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
session.save(stu);
tx.commit();
} catch (HibernateException e) ...{
// TODO: handle exception
e.printStackTrace();
}finally
...{
session.close();
}
}
/**//*--------------删除学生对象---------------*/
public static void delStu(String id)...{
try ...{
session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
Student stu =(Student)session.get(Student.class, id);
session.delete(stu);
tx.commit();
} catch (HibernateException e) ...{
// TODO: handle exception
e.printStackTrace();
}finally...{
session.close();
}
}
/**//*------------------修改学生对象----------------------*/
public static void mdfStu(Student stu)...{
try ...{
session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
session.update(stu);
tx.commit();
} catch (HibernateException e) ...{
// TODO: handle exception
e.printStackTrace();
}finally...{
session.close();
}
}
/**//*-------------------取得所有的学生列表------------------------*/
public static List getAllStu()...{
List list = null;
try ...{
session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
Query q = session.createQuery("from Student");
list = q.list();
tx.commit();
} catch (HibernateException e) ...{
// TODO: handle exception
e.printStackTrace();
}finally...{
session.close();
}
return list;
}
}
* @author tiger Create Date 2006-11-25
*
* Blog: tiger.ptuhaiwai.com
*/
package persistence;
import java.util.List;
import model.Student;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.SessionFactory;
public class DAOImp ...{
static Session session = null;
static SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();
/**//*--------------创建新的学生对象--------------*/
public static void createStu(Student stu)...{
try ...{
session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
session.save(stu);
tx.commit();
} catch (HibernateException e) ...{
// TODO: handle exception
e.printStackTrace();
}finally
...{
session.close();
}
}
/**//*--------------删除学生对象---------------*/
public static void delStu(String id)...{
try ...{
session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
Student stu =(Student)session.get(Student.class, id);
session.delete(stu);
tx.commit();
} catch (HibernateException e) ...{
// TODO: handle exception
e.printStackTrace();
}finally...{
session.close();
}
}
/**//*------------------修改学生对象----------------------*/
public static void mdfStu(Student stu)...{
try ...{
session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
session.update(stu);
tx.commit();
} catch (HibernateException e) ...{
// TODO: handle exception
e.printStackTrace();
}finally...{
session.close();
}
}
/**//*-------------------取得所有的学生列表------------------------*/
public static List getAllStu()...{
List list = null;
try ...{
session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
Query q = session.createQuery("from Student");
list = q.list();
tx.commit();
} catch (HibernateException e) ...{
// TODO: handle exception
e.printStackTrace();
}finally...{
session.close();
}
return list;
}
}
之后给出测试样例:
/** *//**
* @author tiger Create Date 2006-11-25
*
* Blog: tiger.ptuhaiwai.com
*/
package BusinessManager;
import java.util.List;
import model.Student;
import persistence.DAOImp;
public class Test ...{
public static void main(String[] args) ...{
/**//*------创建新的学生对象------*/
//Student stu = new Student();
//stu.setName("tiger");
//stu.setPwd("123456");
//stu.setEmail("2005.tiger@gmail.com");
//stu.setAge(24);
//DAOImp.createStu(stu);
/*--------修改学生对象--------*/
//List list = DAOImp.getAllStu();
// Student u = (Student)list.get(0);
// u.setAge(88);
// u.set???任意
// DAOImp.mdfStu(u);
/**//*--------删除学生对象-------*/
List list = DAOImp.getAllStu();
Student u = (Student)list.get(0);
DAOImp.delStu(u.getId());
}
}
* @author tiger Create Date 2006-11-25
*
* Blog: tiger.ptuhaiwai.com
*/
package BusinessManager;
import java.util.List;
import model.Student;
import persistence.DAOImp;
public class Test ...{
public static void main(String[] args) ...{
/**//*------创建新的学生对象------*/
//Student stu = new Student();
//stu.setName("tiger");
//stu.setPwd("123456");
//stu.setEmail("2005.tiger@gmail.com");
//stu.setAge(24);
//DAOImp.createStu(stu);
/*--------修改学生对象--------*/
//List list = DAOImp.getAllStu();
// Student u = (Student)list.get(0);
// u.setAge(88);
// u.set???任意
// DAOImp.mdfStu(u);
/**//*--------删除学生对象-------*/
List list = DAOImp.getAllStu();
Student u = (Student)list.get(0);
DAOImp.delStu(u.getId());
}
}
本节结束.
第三节要讲的如何用四个功能做一个分页查询功能
- 遨游Hibernate之二
- 遨游Hibernate之一
- 遨游
- Linux kernel遨游之起始篇
- 框架之Hibernate(二)
- SSH之hibernate(二)
- 框架之 hibernate之二
- 【TomoEngine】 第二讲 太空遨游(二)飞船全方位控制
- Hibernate之旅二:Hibernate简介
- Hibernate之旅二:Hibernate简介
- Hibernate之旅二:Hibernate简介
- Hibernate之旅二:Hibernate简介
- Hibernate之旅二:Hibernate简介
- Hibernate之旅二:Hibernate简介
- Hibernate之旅二:Hibernate简介
- Hibernate之旅二:Hibernate简介
- Hibernate之二why ORM
- 读Hibernate源码 之二
- 全新的JoyiStar AJAX WebShop3.0体验版预览
- JSP技巧:发送动态图像
- swt设置窗体居中
- Tomcat集群的三种负载均衡方式优缺点对照
- new和delete操作
- 遨游Hibernate之二
- Combox的数据源
- 论四核“冲动”的背后
- ISAPI Rewrite 配置简介
- apache-mod_rewrite详解
- Tomcat配置经验谈
- Windows Vista User Account Control (UAC) 全新安全模块“用户帐户控制”
- 中国外包开发成功与失败的“实态”
- 学生笔记(Oracle第二章)