- 浏览: 916430 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (445)
- 备忘 (0)
- java基础 (28)
- jsp (15)
- css (4)
- javascript (30)
- struts (7)
- servlet (2)
- struts2 (7)
- jdbc (16)
- hibernate (22)
- ibatis (0)
- jpa (1)
- spring (17)
- spring定时任务 (8)
- 整合开发 (12)
- JavaArticle (0)
- php (6)
- velocity (2)
- mysql (19)
- sqlserver (52)
- oracle (23)
- lucene (49)
- ajax (13)
- dwr (5)
- JFreeChart (1)
- service (14)
- tools (18)
- c#基础 (20)
- 程序安全 (0)
- 学习网站 (1)
- 社会需求 (2)
- flash (1)
- 流媒体 (1)
- java_code (1)
- htmlparser (1)
- 速动画教程 (5)
- 设计模式 (1)
- xml操作 (2)
- uml操作 (4)
- 测试 (1)
- linux (8)
- 版本控制 (4)
- 服务器 (12)
- 安全 (6)
- 美工 (2)
最新评论
-
Zhang_amao:
我想问一下, 你用的lucene版本和highligher的版 ...
使用Lucene的Highlighter实现文件摘要的自动提取 -
wangmengfanwangzhi:
博主,你的QQ是什么啊?有关于lucene的问题想要请教啊~~ ...
Lucene下载及测试 -
cutesunshineriver:
讲得很好,理解起来很顺,对个人学习的帮助性很大,谢谢博主。
velocity入门一 -
libin2722:
我这里有一个任务调度,在晚上3点时候会自动将数据库中某表的数据 ...
Lucene-2.2.0 源代码阅读学习(16) -
greatwqs:
java -cp $JVM_ARGS $classpath ...
java的cp命令
基于泛型的通用Dao接口:(主要是在使用hibernate或JPA时使用)
package com.qiujy.dao;
import java.io.Serializable;
import java.util.List;
/**
* 基于泛型的通用Dao接口
*/
public interface GenericDao<T> {
void create(T entity);
void delete(T entity);
void update(T entity);
T findById(Serializable id);
List<T> findAll();
List<T> findList(int pageNo, int pageSize);
int getCountOfAll();
}
hibernate对此泛型Dao接口的使用:
package com.qiujy.dao.hibernate;
import java.io.Serializable;
import java.lang.reflect.ParameterizedType;
import java.util.List;
import org.hibernate.criterion.Projections;
import com.qiujy.common.HibernateUtil;
import com.qiujy.dao.GenericDao;
/**
* Hibernate对泛型通用Dao接口的实现
*/
public class GenericHibernateDaoImpl<T> implements GenericDao<T> {
private Class<T> clazz;
@SuppressWarnings("unchecked")
public GenericHibernateDaoImpl() {
//通过反射获取T的类型信息实例
this.clazz = (Class<T>)((ParameterizedType)this.getClass().getGenericSuperclass())
.getActualTypeArguments()[0];
}
public void create(T entity) {
HibernateUtil.getSession().save(entity);
}
public void delete(T entity) {
HibernateUtil.getSession().delete(entity);
}
@SuppressWarnings("unchecked")
public void update(T entity) {
//HibernateUtil.getSession().saveOrUpdate(entity);
entity = (T) HibernateUtil.getSession().merge(entity);
}
@SuppressWarnings("unchecked")
public List<T> findAll() {
return HibernateUtil.getSession().createCriteria(clazz).list();
}
@SuppressWarnings("unchecked")
public List<T> findList(int pageNo, int pageSize) {
return HibernateUtil.getSession().createCriteria(clazz)
.setFirstResult((pageNo - 1) * pageSize)
.setMaxResults(pageSize)
.list();
}
public int getCountOfAll() {
Integer count = (Integer) HibernateUtil.getSession()
.createCriteria(clazz)
.setProjection(Projections.rowCount())
.uniqueResult();
if (null == count) {
return 0;
} else {
return count.intValue();
}
}
@SuppressWarnings("unchecked")
public T findById(Serializable id) {
return (T)HibernateUtil.getSession().load(clazz, id); //get
}
}
使用泛型Dao接口:
package com.qiujy.dao;
import java.util.List;
import com.qiujy.domain.Resource;
/**
* Resource类的Dao接口
*/
public interface ResourceDao extends GenericDao<Resource> {
public List<Resource> findResources(int status);
}
使用hibernate的实现:
package com.qiujy.dao.hibernate;
import java.util.List;
import com.qiujy.common.HibernateUtil;
import com.qiujy.dao.ResourceDao;
import com.qiujy.domain.Resource;
public class ResourceDaoImpl extends GenericHibernateDaoImpl<Resource> implements ResourceDao {
@SuppressWarnings("unchecked")
public List<Resource> findResources(int status) {
return (List<Resource>)HibernateUtil.getSession()
.createQuery("from Resource where status=:status")
.setInteger("status", status)
.list();
}
}
发表评论
-
hibernate.Properties
2012-07-28 16:12 874Hibernate配置属性 属性名用途 hibernate. ... -
Restrictions
2010-05-31 09:29 1269HQL运算符 QBC运算符 含义 ... -
Hibernate 之 oscache实现二级缓存
2009-10-20 13:49 9411.导入oscache包。 2.sessionFactory ... -
正确解决org.hibernate.DuplicateMappingException
2009-10-16 14:53 1949例如异常信息如下: duplicate import ... -
Hibernate对象的三种状态
2009-10-11 21:10 1522Hibernate的对象有3种状态,分别为:瞬时态(Trans ... -
could not initialize proxy - the owning Session was closed
2009-10-11 21:01 801其实这个异常写的非常 ... -
Hibernate连接池配置
2009-10-05 08:18 877Hibernate支持第三方的连接池,官方推荐的连接池是C3P ... -
criteria用法
2009-06-01 09:20 8386Criteria Query通过面向对 ... -
hibernate.cfg.xml配置总结
2009-05-31 21:52 823Hibernate的描述文件可以是一个propertie ... -
利用c3p0配置数据库连接
2009-05-22 12:34 1262<!-- 配置数据源 --& ... -
hibernate属性表
2009-05-22 12:29 945属性名 用途 hibernate.dialec ... -
关于Hibernate一个配置参数hibernate.hbm2ddl.auto
2009-05-13 09:55 1722<properties> & ... -
hibernate二级缓存攻略
2009-05-13 09:47 860hibernate的session提 ... -
hibernate二级缓存的配置
2009-05-13 09:39 9401、首先要打开二级缓存,在hibernate.cfg.xml中 ... -
HibernateTemplate的常规用法
2009-04-13 10:05 1034HibernateTemplate提供非常多的常用方法来完成基 ... -
Hibernate中操作问题
2008-11-18 16:53 943在使用Hibernate进行查询操作的时候,有时候会遇到只需要 ... -
多条件进行查询
2008-11-18 16:44 913StringBuffer buf = new StringBu ... -
Hibernate进行批处理的问题
2008-11-18 16:04 849在开发新闻管理系统的时候,对象进行批量处理的时候,如果直接用h ... -
Hibernate与数据库
2008-11-18 15:11 874mssql建表时用的如:user等关键字在使用hibernat ... -
Hibernate主键生成方式 Key Generator
2008-11-13 20:36 1027Hibernate主键生成方式 Key ...
相关推荐
Java源代码 一个简单的通用DAO实现 (基于hibernate)面向应用层按POJO类缓存hibernate的session对象.使用举例: DAO dao = DAOFactory.getDAO(POJO.class);//获得一个全局类单例的DAO实例 dao.save(pojo); 你也可以...
现在无论做什么应用,基本上都会有涉及对象... 其实,利用Java面向对象的基本特性及JDK5新引入的泛型语法,我们可以创建通用的DAO对象的CRUD方法,同时又可保证类型的安全性。下面DAO的实现以Hibernate为基础加以演示。
现在无论做什么应用,基本上都会有涉及对象... 其实,利用Java面向对象的基本特性及JDK5新引入的泛型语法,我们可以创建通用的DAO对象的CRUD方法,同时又可保证类型的安全性。下面DAO的实现以Hibernate为基础加以演示。
Haha.Hibernate SprintSideExt 通用HibernateDAO 文章资源 详见:http://blog.csdn.net/lijun7788/article/details/6658847
3)业务逻辑改变时,dao需要同时修改两个类文件(接口和实现类) 在本文中,我将为您展示如何避免再三地重复 DAO 代码。 在这里我建议项目最好使用一个共通的DAO,因为这样会为你省去非常多的类,而那些类里的...
这种实现的主要优点是,由于这个 dao 是使用 Java 泛型实现的,我们只需要提供托管的实体类型和主键类型。 通过这样做,我们可以访问参数化数据操作,而无需编写单行代码。 请注意,这样做的主要目标是代码重用,这...
3)业务逻辑改变时,dao需要同时修改两个类文件(接口和实现类) 在本文中,我将为您展示如何避免再三地重复 DAO 代码。 在这里我建议项目最好使用一个共通的DAO,因为这样会为你省去非常多的类,而那些类里的...
service接口 ... ... ... public interface EmployeeService extends Entity...这样只需要向dao中注入pojo的完整包名,你就能拥有一个pojo的dao,并且在你的service接口和实现类里不用写一句代码. 轻松持久化你的entity pojo
这种实现的主要优点是,由于这个 dao 是使用 Java 泛型实现的,我们只需要提供托管的实体类型和主键类型。 通过这样做,我们可以访问参数化数据操作,而无需编写单行代码。 请注意,这样做的主要目标是代码重用,这...
java dal 封装的通用dao 数据访问层,如果你不喜欢用Hibernate、Mybaits这类ORM框架,喜欢Spring JdbcTemplate或DbUtils,那么可以试试这个封装的通用dal
AutoDAO是Java的类固醇实现的通用DAO,具有Hibernate支持,注释驱动的配置,紧密的Spring Framework集成以及大多数常见查询类型所需的零持久性代码。
这个Dao层设计模式,是多年来本人总结的经典通用方法的集合,应用hibernate技术,以及java泛型模式,为快速开发项目提供了通用Dao层。文档中有相应测试用例!
利用eclipse的JET模板自动生成java文件来生成DAO,生成的DAO继承了一个通用的GenenicDao,GenenicDao用到了spring和hibernate. 提供源代码
消息接口,通用接口和菜单接口(没有内测号无法测试)==============由于涉及的框架比较杂乱,在此一一解释:简便实用的前置条件:你的项目是基于Spring,Maven,Hibernate架构;你的项目至少有一个已经存在的配置...
写了一个通用java访问数据库操作的DAO类,非常简单,非常强大,非常方便,非常好用。绝对原版,绝对原创。把hibernate彻底扔掉。(根据C#改编的,原本我是搞C#开发的)
写了一个通用java访问数据库操作的DAO类,非常简单,非常强大,非常方便,非常好用。绝对原版,绝对原创。把hibernate彻底扔掉。(根据C#改编的,原本我是搞C#开发的)支持泛型集合,让程序运行效率更高。
通用道在 JPA/HIbernate/Spring 环境中使用泛型提供 DAO API,因此它可以与此类架构中的任何 Hibernate POJO 一起使用,而无需为每个域类创建专用的数据访问接口。 Maven 依赖项: <dependency> <groupId>org....
14.2.3hibernate的dao实现 281 14.2.4使用hibernatetemplate 281 14.2.5管理hibernate事务 282 14.3项目实战——学生成绩查询系统 283 本章小结 292 课后练习 293 第15章图书馆管理系统 294 15.1系统功能解析...
通过将搜索对象传递给通用DAO和通用DAO的搜索方法,可以使用此功能。 搜索对象提供了灵活的搜索选项: 使用标准运算符(=,!=,>,<,> =,<=,LIKE,IN,IS NULL和IS EMPTY)对属性进行过滤。 使用...