`

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

阅读更多
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();
	}

}

分享到:
评论

相关推荐

    基于JAVA struts+hibernate实现的网络购物系统的毕业设计,该系统采用MVC三层架构,分离了表现层、业务逻辑层和

    数据持久层使用Hibernate框架实现,定义了商品、用户、订单、订单详情等实体类,这些实体类与数据库中的相应数据表进行映射,实现了数据的持久化存储。 该系统采用MVC三层架构,分离了表现层、业务逻辑层和数据持久层,...

    Hibernate实战(第2版 中文高清版)

     3.2.3 编写POJO和持久化实体类   3.2.4 实现POJO关联   3.2.5 把逻辑添加到访问方法   3.3 ORM元数据   3.3.1 XML中的元数据   3.3.2 基于注解的元数据   3.3.3 使用XDoclet   3.3.4 处理全局的元...

    NHibernate参考文档 - 符合.Net习惯的关系数据库持久化

    NHibernate的目标是对于开发者通常的数据持久化相关的编程任务,解放其中的95%。对于以数据为中心的程序来说,它们往往只在数据库中使用存储过程来实现商业逻辑,NHibernate可能不是最好的解决方案;对于那些在基于.NET...

    第24次课-1 Spring与Hibernate的整合

    通常,程序中采用实现HibernateCallback的匿名内部类来获取HibernateCallback的实例,方法doInHibernate()就是Spring执行的持久化操作。 24.3 Spring对Hibernate的简化 24.3.5 HibernateDaoSupport Spring为与...

    hibernate中文帮助文档html

    Hibernate的目标是对于开发者通常的数据持久化相关的编程任务,解放其中的95%。对于以数据为中心的程序来说,它们往往只在数据库中使用存储过程来实现商业逻辑,Hibernate可能不是最好的解决方案;对于那些在基于Java的...

    Hibernate 中文API文档

    Hibernate的目标是对于开发者通常的数据持久化相关的编程任务,解放其中的95%。对于以数据为中心的程序来说,它们往往只在数据库中使用存储过程来实现商业逻辑,Hibernate可能不是最好的解决方案;对于那些在基于Java的...

    Hibernate教程

    1.2. 第一个持久化类 1.3. 映射cat 1.4. 与Cat同乐 1.5. 结语 2. Hibernate入门 2.1. 前言 2.2. 第一部分 - 第一个Hibernate程序 2.2.1. 第一个class 2.2.2. 映射文件 2.2.3. Hibernate配置 2.2.4. 用Ant...

    Hibernate3.0中文手册.rar

    &lt;br&gt;Hibernate的目标是对于开发者通常的数据持久化相关的编程任务,解放其中的95%。对于以数据为中心的程序来说,它们往往只在数据库中使用存储过程来实现商业逻辑,Hibernate可能不是最好的解决方案;对于那些在...

    hibernate 教程

    第一个可持久化类 1.3. 映射cat 1.4. 与猫同乐 1.5. 结语 2. 体系结构 2.1. 总览 2.2. JMX集成 2.3. JCA支持 3. SessionFactory配置 3.1. 可编程配置方式 3.2. 获取SessionFactory...

    Hibernate Annotations 中文文档

    用cascading实现传播性持久化(Transitive persistence) 2.2.5.5. 关联关系获取 2.2.6. 映射复合主键与外键 2.2.7. 映射二级表(secondary tables) 2.3. 映射查询 2.3.1. 映射EJBQL/HQL查询 2.3.2. 映射本地化...

    hibernate annotation 中文文档

    用cascading实现传播性持久化(Transitive persistence) 2.2.5.5. 关联关系获取 2.2.6. 映射复合主键与外键 2.2.7. 映射二级表(secondary tables) 2.3. 映射查询 2.3.1. 映射EJBQL/HQL查询 2.3.2. 映射本地化查询 ...

    最全Hibernate 参考文档

    1.2. 第一个持久化类 1.3. 映射cat 1.4. 与Cat同乐 1.5. 结语 2. 架构(Architecture) 2.1. 概况(Overview) 2.2. 实例状态 2.3. JMX整合 2.4. 对JCA的支持 3. 配置 3.1. 可编程的配置方式 3.2. 获得SessionFactory ...

    基于Struts+Hibernate+MVC的员工在线请假系统毕业论文(43页14416字数).doc

    Hibernate持久化类,以及在日期维护模块中的非数据库文件,Excel文件。 3)在线提交请假申请模块的设计与实现,包括该模块的功能分析与用例设计,该模块中的逻辑处理过程,该请模块还使用Ajax技术,让用户有更好的...

    ssh(structs,spring,hibernate)框架中的上传下载

     以上是Spring+Hibernate将文件二进制数据持久化到数据库的解决方案,而Struts通过将表单中file类型的组件映射为ActionForm中类型为org.apache.struts.upload. FormFile的属性来获取表单提交的文件数据。  工程...

    本科毕业论文 基于B/S的ERP人力资源管理子系统的设计与开发

    该子系统使用Struts实现MVC,Spring负责架构的结合,Hibernate进行数据的持久化,基本实现了部门管理、员工管理、招聘管理、考勤管理、培训管理、绩效考评管理、薪资管理、合同管理、辅助决策、系统管理等模块。...

    hibernate

    第一个可持久化类 1.3. 映射cat 1.4. 与猫同乐 1.5. 结语 2. 体系结构 2.1. 总览 2.2. JMX集成 2.3. JCA支持 3. SessionFactory配置 3.1. 可编程配置方式 3.2. 获取SessionFactory...

    OA办公自动化管理系统(Struts1.2+Hibernate3.0+Spring2+DWR)130224.rar

    OA办公自动化管理系统是一个基于Struts1.2、Hibernate3.0、Spring2和DWR技术实现的Java Web应用项目。该系统采用了MVC设计模式,将业务逻辑、数据访问和表示层分离,提高了代码的可维护性和可扩展性。Struts1.2作为...

    hibernate3.04中文文档.chm

    1.2. 第一个持久化类 1.3. 映射cat 1.4. 与Cat同乐 1.5. 结语 2. Hibernate入门 2.1. 前言 2.2. 第一部分 - 第一个Hibernate程序 2.2.1. 第一个class 2.2.2. 映射文件 2.2.3. Hibernate配置 2.2.4....

    基于Java的在线购物系统的设计与实现1.rar

    数据持久化:采用ORM框架如Hibernate或MyBatis来实现对象关系映射,简化数据库操作和管理。 前端技术:使用HTML、CSS和JavaScript等前端技术实现用户界面,可以选择使用Vue.js、React.js等前端框架来提升用户体验。 ...

    Hibernate3+中文参考文档

    1.2. 第一个持久化类 1.3. 映射cat 1.4. 与Cat同乐 1.5. 结语 2. 架构(Architecture) 2.1. 概况(Overview) 2.2. 实例状态 2.3. JMX整合 2.4. 对JCA的支持 3. 配置 3.1. 可编程的配置方式 3.2. 获得SessionFactory ...

Global site tag (gtag.js) - Google Analytics