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       ht.put(rsmd.getColumnName(i+1),rs.getObject(i+1));
    }
    array.add(ht);
  }
  HibernateSessionFactory.clossSession();
  return array;
}

你可能感兴趣的:(java,sql,Hibernate)