Hibernate BaseDao
来源:互联网 发布:软件测试行业发展前景 编辑:程序博客网 时间:2024/04/28 10:02
package com.dao;
import java.util.ArrayList;
import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
public class BaseDao {
private static SessionFactory sf;
private static ThreadLocal<Session> tl=new ThreadLocal<Session>();
static{
Configuration config=new Configuration().configure();
sf=config.buildSessionFactory();
}
public static Session getSession(){
Session session=tl.get();
if(session==null){
session=sf.openSession();
//将获得的session保存到线程本地变量中
tl.set(session);
}
return session;
}
public static void closeSession(){
Session session=tl.get();
if(session!=null && session.isOpen()){
//将线程本地变量中的session清空
tl.set(null);
session.close();
}
}
public static int add(Object obj){
int count=0;
Session session=getSession();
session.beginTransaction();
try {
session.save(obj);
session.getTransaction().commit();
count=1;
} catch (Exception e) {
session.getTransaction().rollback();
e.printStackTrace();
}
return count;
}
public static int update(Object obj){
int count=0;
Session session=getSession();
session.beginTransaction();
try {
session.update(obj);
session.getTransaction().commit();
count=1;
} catch (Exception e) {
session.getTransaction().rollback();
e.printStackTrace();
}
return count;
}
public static int delete(Object obj){
int count=0;
Session session=getSession();
session.beginTransaction();
try {
session.delete(obj);
session.getTransaction().commit();
count=1;
} catch (Exception e) {
session.getTransaction().rollback();
e.printStackTrace();
}
return count;
}
public static List findAll(Class clazz){
List list=new ArrayList();
Session session=getSession();
Criteria c=session.createCriteria(clazz);
list=c.list();
closeSession();
return list;
}
public static Object ById(Class clazz,int id ){
Object obj=null;
Session session=getSession();
obj=session.get(clazz, id);
closeSession();
return obj;
}
}
import java.util.ArrayList;
import java.util.List;
import org.hibernate.Criteria;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
public class BaseDao {
private static SessionFactory sf;
private static ThreadLocal<Session> tl=new ThreadLocal<Session>();
static{
Configuration config=new Configuration().configure();
sf=config.buildSessionFactory();
}
public static Session getSession(){
Session session=tl.get();
if(session==null){
session=sf.openSession();
//将获得的session保存到线程本地变量中
tl.set(session);
}
return session;
}
public static void closeSession(){
Session session=tl.get();
if(session!=null && session.isOpen()){
//将线程本地变量中的session清空
tl.set(null);
session.close();
}
}
public static int add(Object obj){
int count=0;
Session session=getSession();
session.beginTransaction();
try {
session.save(obj);
session.getTransaction().commit();
count=1;
} catch (Exception e) {
session.getTransaction().rollback();
e.printStackTrace();
}
return count;
}
public static int update(Object obj){
int count=0;
Session session=getSession();
session.beginTransaction();
try {
session.update(obj);
session.getTransaction().commit();
count=1;
} catch (Exception e) {
session.getTransaction().rollback();
e.printStackTrace();
}
return count;
}
public static int delete(Object obj){
int count=0;
Session session=getSession();
session.beginTransaction();
try {
session.delete(obj);
session.getTransaction().commit();
count=1;
} catch (Exception e) {
session.getTransaction().rollback();
e.printStackTrace();
}
return count;
}
public static List findAll(Class clazz){
List list=new ArrayList();
Session session=getSession();
Criteria c=session.createCriteria(clazz);
list=c.list();
closeSession();
return list;
}
public static Object ById(Class clazz,int id ){
Object obj=null;
Session session=getSession();
obj=session.get(clazz, id);
closeSession();
return obj;
}
}
0 0
- hibernate BaseDao
- Hibernate BaseDao
- Hibernate 通用 baseDao
- Hibernate常用的BaseDao
- hibernate 泛型BaseDAO
- spring hibernate BaseDAO
- Hibernate实现BaseDao
- 基于hibernate的BaseDao
- 打造Hibernate通用BaseDAO
- 学习Hibernate常用的BaseDao
- Struts+hibernate通用接口BaseDAO
- java hibernate 基础dao basedao
- 基于hibernate的BaseDAO接口
- 基于Hibernate的BaseDao类
- 基于Hibernate的BaseDao类
- 基于hibernate的BaseDAO接口
- 基于hibernate的BaseDAO接口
- 基于hibernate的BaseDAO接口
- 奇奇怪怪的字符串循环同构问题
- Android抓去logcat信息的方法
- 如何使QLabel上显示的图片大小和QLabel自适应?
- Hive 的优化
- opengles之多重纹理与过程纹理
- Hibernate BaseDao
- 安卓开发之ListView(HorizontalListView)横向动态加载数据例子
- Java虚拟机(三)——类加载机制
- 155.Subsets II (包含重复元素的数组的全部子集)
- div中英文无法自动换行的解决办法
- Python——requests安装
- 2、jQuery与css小结
- 监督学习之广义线性模型
- qml在开发板上启动时,出现白屏(qml的两种加载方式)