基于hibernate的数据持久化处理简单实现类

本文介绍了一个名为TaskInfoService的具体实现类TaskInfoServiceImpl,该类提供了对TaskInfo实体的增删改查操作,并实现了数据持久化的功能。文章详细展示了如何通过Hibernate进行数据交互,包括查询特定ID的任务信息、删除任务信息、更新任务信息等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


package com.forveross.plane.service.impl;

import java.util.List;

import org.hibernate.Query;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.forveross.plane.service.TaskInfoService;
import com.forveross.plane.vo.TaskInfo;
import com.kit.common.dao.abstr.AbstractDao;

/**
* 数据持久化处理类实现
*
* @author ahomeeye
*
*/
@Transactional
@Scope("singleton")
@Service("taskInfoServiceImpl")
public class TaskInfoServiceImpl extends AbstractDao implements TaskInfoService {

@Override
public TaskInfo findTaskInfo(long id) throws Exception {
return (TaskInfo) getHibernateDao().getHibernateTemplate().get(
TaskInfo.class, id);
}

@Override
public void deleteTaskInfo(long id) throws Exception {
getHibernateDao().getHibernateTemplate().delete(findTaskInfo(id));
getOscacheFactory().removeObjectByGroup(TaskInfo.class.getName());
}

@Override
public void deleteTaskInfo(TaskInfo ti) throws Exception {
getHibernateDao().getHibernateTemplate().delete(ti);
getOscacheFactory().removeObjectByGroup(TaskInfo.class.getName());
}

@Override
public void updateTaskInfo(TaskInfo ti) throws Exception {
getHibernateDao().getHibernateTemplate().update(ti);
getOscacheFactory().removeObjectByGroup(TaskInfo.class.getName());
}

@Override
public void saveOrUpdateTaskInfo(TaskInfo ti) throws Exception {
getHibernateDao().getHibernateTemplate().saveOrUpdate(ti);
getOscacheFactory().removeObjectByGroup(TaskInfo.class.getName());
}

@Override
public void saveTaskInfo(TaskInfo ti) throws Exception {
getHibernateDao().getHibernateTemplate().save(ti);
getOscacheFactory().removeObjectByGroup(TaskInfo.class.getName());
}

public int countTaskInfo() {
String hql = "select count(*) from TaskInfo";
Object o = getHibernateDao().getSessionFactory().getCurrentSession()
.createQuery(hql).uniqueResult();
return Integer.parseInt(o.toString());
}

@Override
@SuppressWarnings("unchecked")
public List<TaskInfo> findTaskInfoList(int pageNum, int pageSize) {
pageNum = pageNum > 1 ? pageNum - 1 : 0;
pageSize = pageSize > 0 ? pageSize : 10;

String hql = "from TaskInfo t order by t.grabChannel asc";
Query query = getHibernateDao().getSessionFactory().getCurrentSession()
.createQuery(hql);
query.setFirstResult(pageNum * pageSize);
query.setMaxResults(pageSize);

return (List<TaskInfo>) query.list();
}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值