package org.cissco.dao;
import java.util.Iterator;
import java.util.List;
import org.cissco.HibernateSessionFactory;
import org.cissco.vo.Admin;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;
public class AdminDAO {
public void getAdminDAO(Admin admin)
{
Session session = HibernateSessionFactory.getSession();
String hql = "FROM Admin AS a WHERE a.adminId = ?";
Query query = session.createQuery(hql);
query.setInteger(0, admin.getAdminId());
Iterator it = query.list().iterator();
if(it.hasNext())
{
admin.setAdminName(((Admin)it.next()).getAdminName());
}
}
public boolean saveUser(Admin admin)
{
boolean isSuccessful = false;
Transaction ts = null;
try
{
Session session = HibernateSessionFactory.getSession();
ts = session.beginTransaction();
session.save(admin);
ts.commit();
isSuccessful = true;
}
catch (HibernateException e)
{
e.printStackTrace();
try
{
ts.rollback();
}
catch (HibernateException e1)
{
e1.printStackTrace();
}
}
finally
{
try
{
HibernateSessionFactory.closeSession();
} catch (HibernateException e)
{
e.printStackTrace();
}
}
return isSuccessful;
}
public List getUserList()
{
Session session = HibernateSessionFactory.getSession();
List list = session.createQuery("FROM Admin").list();
if(list != null && list.size() > 0)
{
return list;
}
return list;
}
public Admin getAdmin(int id)
{
Session session = HibernateSessionFactory.getSession();
Admin admin = null;
List list = session.createQuery("FROM Admin AS a WHERE a.adminId=:id").setInteger("id", id).list();
if(list != null && list.size() > 0)
{
admin = (Admin) list.get(0);
}
return admin;
}
public boolean deleteAdmin(int adminId)
{
boolean isSuccessful = false;
try
{
Session session = HibernateSessionFactory.getSession();
Transaction ts = session.beginTransaction();
Admin admin = (Admin) session.load(Admin.class, new Integer(adminId));
session.delete(admin);
ts.commit();
isSuccessful = true;
}
catch (HibernateException e)
{
e.printStackTrace();
}
return isSuccessful;
}
public boolean updateAdmin(Admin admin,int id)
{
boolean isSuccessful = false;
Transaction ts = null;
Session session = null;
try
{
session = HibernateSessionFactory.getSession();
ts = session.beginTransaction();
session.load(Admin.class, new Long(id));
admin.setAdminName(admin.getAdminName());
admin.setAdminPass(admin.getAdminPass());
session.merge(admin);
ts.commit();
isSuccessful = true;
}
catch (HibernateException e)
{
e.printStackTrace();
try
{
ts.rollback();
}
catch (HibernateException e1)
{
e1.printStackTrace();
}
}
finally
{
try
{
session.close();
}
catch (HibernateException e)
{
e.printStackTrace();
}
}
return isSuccessful;
}
}
hibernate中用hql實現查找、刪除、更新
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.