操作Hibernate類:增加,刪除,修改及查詢
作者:佚名
本篇文章講述操作Hibernate類的實現(xiàn):增加,刪除,修改及查詢。具體來說,就是增加,刪除,修改,按ID查詢,模糊查詢,以及查詢?nèi)俊?/div>
操作Hibernate類大致有增加,刪除,修改及檢查四種,簡稱為增刪改查。以下為實現(xiàn)代碼:
- /*
- *具體操作hibernate的類
- *增加,刪除,修改,按ID查詢,模糊查詢,查詢?nèi)?
- **/
- public class PersonOperate {
- //在hibernate中所有操作都是由Session完成
- public Session session = null;
- //在構(gòu)造方法中實例化Session對象
- public PersonOperate(){
- //找出hibernate的配置
- Configuration config = new Configuration().configure();
- //從配置中取出SessionFactory
- SessionFactory sf = config.buildSessionFactory();
- //從SessionFactory中取出Session
- this.session = sf.openSession();
- }
- //操作Hibernate類的所有操作都是通過Session完成的
- //增加數(shù)據(jù)庫中數(shù)據(jù)
- public void insert(Person person){
- //開始事務(wù)
- Transaction tran = session.beginTransaction();
- //執(zhí)行語句
- session.save(person);
- //提交事務(wù)
- tran.commit();
- session.close();
- }
- //操作Hibernate類更改數(shù)據(jù)庫中的數(shù)據(jù)
- public void update(Person person){
- //開始事務(wù)
- Transaction tran = session.beginTransaction();
- //執(zhí)行語句
- session.update(person);
- //提交事務(wù)
- tran.commit();
- }
- /*操作Hibernate類:按ID查詢
- *我們插入,修改都是對對象進(jìn)行操作
- *那么我們查詢的時候也應(yīng)該是返回一個對象
- **/
- public Person queryById(String id){
- System.out.println(id);
- Person person = null;
- //hibernate查詢語句
- String hql = "FROM Person as p WHERE p.id = ?";
- Query q = session.createQuery(hql);
- q.setString(0, id);
- List list = q.list();
- Iterator iteator = list.iterator();
- if(iteator.hasNext()){
- person = (Person)iteator.next();
- }
- return person;
- }
- /*操作Hibernate類:刪除數(shù)據(jù)庫中數(shù)據(jù)
- *hiberante2,hibernate3中通用的刪除方法
- *缺點:刪除數(shù)據(jù)之前要先查詢一次數(shù)據(jù),找出刪除的數(shù)據(jù)對象
- *性能低下
- **/
- public void delete(Person person){
- //開始事務(wù)
- Transaction tran = session.beginTransaction();
- //執(zhí)行語句
- session.delete(person);
- //提交事務(wù)
- tran.commit();
- }
- //hibernate3的用法
- public void delete(String id){
- //開始事務(wù)
- Transaction tran = session.beginTransaction();
- String hql = "DELETE Person WHERE id = ?";
- Query q = session.createQuery(hql);
- q.setString(0, id);
- //執(zhí)行更新語句
- q.executeUpdate();
- //提交事務(wù)
- tran.commit();
- }
- //操作Hibernate類:查詢?nèi)繑?shù)據(jù)
- public List queryAll(){
- List list = null;
- String hql = "FROM Person as p ";
- Query q = session.createQuery(hql);
- list = q.list();
- return list;
- }
- //操作Hibernate類:模糊查詢
- public List queryByLike(String colnum,String value){
- List list = null;
- String hql = "FROM Person as p WHERE p."+ colnum +" like ?";
- Query q = session.createQuery(hql);
- q.setString(0, "%"+ value +"%");
- list = q.list();
【編輯推薦】
責(zé)任編輯:book05
來源:
百度博客


相關(guān)推薦




