使用Hibernate操作数据库
生活随笔
收集整理的這篇文章主要介紹了
使用Hibernate操作数据库
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
2019獨角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>
一、加載數(shù)據(jù)庫。
1. 使用get()方法。
package com.hibernate.dao;import org.hibernate.Session; import com.hibernate.entity.BaseEntity;public class TestGet {public static void main(String[] args){new TestGet().getEntityById(1);}private void getEntityById(int i){//獲得Session實例Session session = HibernateSessionFactory.getSession();//從數(shù)據(jù)表中家在Id為i的對象BaseEntity baseEntity = (BaseEntity)session.get(BaseEntity.class, i);//在控制臺數(shù)據(jù)該對象信息System.out.println(baseEntity.getCreateTime());HibernateSessionFactory.clossSession();} }??? 使用get方法時,如果制定的記錄不存在,則返回null。
2. 使用load()方法。
... BaseEntity baseEntity = (BaseEntity)session.load(BaseEntity.class, i); ...??? 使用load方法如果加載數(shù)據(jù)不存在,則拋出ObjectNotFoundException異常,這一點與get方法時不同的。
二、刪除數(shù)據(jù)
????使用delete方法。
package com.hibernate.dao;import org.hibernate.Session; import org.hibernate.Transaction;import com.hibernate.entity.BaseEntity;public class TestDelete {public static void main(String[] args) {new TestDelete().deleteEntityById(3);}private void deleteEntityById(int i){//獲得Session實例Session session = HibernateSessionFactory.getSession();//創(chuàng)建一個事務(wù)Transaction tx =null;//從數(shù)據(jù)表中家在Id為i的對象BaseEntity baseEntity = (BaseEntity)session.get(BaseEntity.class, i);try{//開始一個事務(wù)tx = session.beginTransaction();//執(zhí)行刪除session.delete(baseEntity);//提交事務(wù)tx.commit();}catch(Exception e){if(tx!=null){//事務(wù)回滾tx.rollback();}e.printStackTrace();}finally {//關(guān)閉SessionHibernateSessionFactory.clossSession();}} }三、修改數(shù)據(jù)
... //從數(shù)據(jù)表中家在Id為i的對象 BaseEntity baseEntity = (BaseEntity)session.get(BaseEntity.class, i); baseEntity.serCreateTime(new Date()); try{//開始一個事務(wù)tx = session.beginTransaction();//執(zhí)行修改session.update(baseEntity);...?
轉(zhuǎn)載于:https://my.oschina.net/PresidentLi/blog/799846
總結(jié)
以上是生活随笔為你收集整理的使用Hibernate操作数据库的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于Xcode安装CocoaPods报错
- 下一篇: 修改开发环境、工程、文件的字符集