敬业的IT人 >> 数据库 >> 其他数据库 >> 使用Hibernate编写通用数据库操作代码

使用Hibernate编写通用数据库操作代码

敬业的IT人 互联网 佚名 2008-1-8 15:51:31
    ·创建struts1.2 + Hibernate3.0 Web工
    ·Struts+Spring+Hibernate组装web应用
    ·Hibernate 的原理与配置快速入门
    ·我找到一个最简单的hibernate入门教程
    ·Hibernate 实例学习笔记
    ·在MyEclipse快速搭建Hibernate应用
    ·spring+hibernate+jbpm整合成功
    ·整合 JSF+Spring+Hibernate的小例子
    ·Hibernate配置文件中映射元素详解
    ·混合Eclipse、WTP、Struts和Hibernate

insert方法

public void insert(Object o){

Session session = HibernateSessionFactory.currentSession();

Transaction t = session.beginTransaction();

session.save(o);

t.commit();

HibernateSessionFactory.clossSession();

}

delete方法

public void delete(Object o,Serializable id){

Session session = HibernateSessionFactory.currentSession():

Transaction t = session.beginTransaction();

Object o = session.get(o.class,id);

if(o!=null){

session.delete(o);

}

t.commit();

HibernateSessionFactory.clossSession();

}

update方法

public void update(Object o,Serializable id){

Session session = HibernateSessionFactory.currentSession();

Transaction t = session.beginTransaction();

session.update(o,id);

t.commit();

HibernateSessionFactory.clossSession();

}

基于HQL的通用select方法

public ArrayList select(String sql){

Session session = HibernateSessionFactory.currentSession();

Query query = createQuery(sql);

List list = query.list();

HibernateSessionFactory.clossSession();

return (ArrayList)list;

}

基于SQL的通用select方法

public ArrayList select(String sql) throws Exception{

Session session = HibernateSessionFactory.currentSession();

Connection con = session.connection();

PreparedStatement pstmt = con.preparedStatement(sql);

ResultSet rs = pstmt.executeQuery();

ResultSetMetaData rsmd = rs.getMetaData();

Hashtable ht = null;

ArrayList array = new ArrayList();

while(rs.next()){

ht = new Hashtable();

for(int i=0;i<rsmd.getColumnCount();i++){

ht.put(rsmd.getColumnName(i+1),rs.getObject(i+1));

}

array.add(ht);

}

HibernateSessionFactory.clossSession();

return array;

}

粤ICP备06119539号
Copyright CiscoSky.Org,Some Rights Reserved.
Email:me1228#tom.com