天天看點

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():

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

    if(o!=null){

        session.delete(o);

    }

update方法

public void update(object o,serializable id){

    session.update(o,id);

基于hql的通用select方法

public arraylist select(string sql){

    query query = createquery(sql);

    list list = query.list();

    return (arraylist)list;

基于sql的通用select方法

public arraylist select(string sql) throws exception{

    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);

    return array;