`

Light-commons 加入orm模块

阅读更多
light-commons 计划创建一个ORM通用接口层,并提供一个jdbc实现和一个hibernate实现。今天创建了接口以及Hibernate的实现。

1. DaoTemplate
HibernateDaoTemplate daoTemplate = new HibernateDaoTemplate(sessionFactory);
//与spring的 hibernateTemplate 类似
//MyPojo mypojo = (MyPojo) hibernateTemplate.get(MyPojo.class,1L);
//与spring的HibernateTemplate不同的是,这里不需要类型转换
MyPojo mypojo = daoTemplate.get(MyPojo.class,1L);


2. Dao
public class MyPojoDao extends HibernateDao<MyPojo,Long>{
  //必要的参数在构造函数里传入,而不是用set方法注入,保证thread-safe
  public MyPojoDao(HibernateDaoTemplate daoTemplate){
    super(daoTemplate);
  }
  //that's all,当然,你也可以在这里加入自己的方法。
}

...
MyPojoDao myPojoDao = new MyPojoDao(hibernateDaoTemplate);
//不需要类型转换
MyPojo myPojo = myPojoDao.get(1L);



3. DaoFactory
HibernateDaoFactory hibernateDaoFactory=new HibernateDaoFactory(sessionFactory);
//指定Entity Class, 指定 ID Class
Dao<MyPojo, Long> myPojoDao= hibernateDaoFactory.getDaoOf(MyPojo.class);
//以get方法为例
//参数仅允许 ID Class ,上面指定的是Long 型
//返回值不再需要类型转换
MyPojo mypojo = myPojoDao.get(1L);



Project Home: http://light-commons.googlecode.com

maven dependency:
	<repositories>
		<repository>
			<id>light-commons</id>
			<url>http://light-commons.googlecode.com/svn/repository</url>
		</repository>
	</repositories>
	<dependencies>
		<dependency>
			<groupId>org.lightcommons</groupId>
			<artifactId>lightcommons</artifactId>
			<version>0.1.0-beta</version>
		</dependency>
...
2
1
分享到:
评论
3 楼 jasongreen 2008-08-09  
DaoTemplate是method级别的generic,不是class级别的
如:
MyPojo mypojo = daoTemplate.get(MyPojo.class,1L);
对应
<T,ID> T get(Class<T>,ID)
2 楼 liang.itjob 2008-08-07  
大概的看了一下API,对于HibernateDaoTemplate这个类为什么不用Generic来写呢
1 楼 tobaguo 2008-06-16  

相关推荐

    istack-commons-runtime-3.0.12-API文档-中文版.zip

    赠送jar包:istack-commons-runtime-3.0.12.jar; 赠送原API文档:istack-commons-runtime-3.0.12-javadoc.jar; 赠送源代码:istack-commons-runtime-3.0.12-sources.jar; 赠送Maven依赖信息文件:istack-commons-...

    spring-data-commons-2.0.6.RELEASE-API文档-中文版.zip

    赠送jar包:spring-data-commons-2.0.6.RELEASE.jar; 赠送原API文档:spring-data-commons-2.0.6.RELEASE-javadoc.jar; 赠送源代码:spring-data-commons-2.0.6.RELEASE-sources.jar; 赠送Maven依赖信息文件:...

    istack-commons-runtime-3.0.12-API文档-中英对照版.zip

    赠送jar包:istack-commons-runtime-3.0.12.jar; 赠送原API文档:istack-commons-runtime-3.0.12-javadoc.jar; 赠送源代码:istack-commons-runtime-3.0.12-sources.jar; 赠送Maven依赖信息文件:istack-commons-...

    spring-data-commons-2.0.9.RELEASE-API文档-中英对照版.zip

    赠送jar包:spring-data-commons-2.0.9.RELEASE.jar; 赠送原API文档:spring-data-commons-2.0.9.RELEASE-javadoc.jar; 赠送源代码:spring-data-commons-2.0.9.RELEASE-sources.jar; 赠送Maven依赖信息文件:...

    spring-data-commons-2.3.9.RELEASE-API文档-中文版.zip

    赠送jar包:spring-data-commons-2.3.9.RELEASE.jar; 赠送原API文档:spring-data-commons-2.3.9.RELEASE-javadoc.jar; 赠送源代码:spring-data-commons-2.3.9.RELEASE-sources.jar; 赠送Maven依赖信息文件:...

    spring-cloud-alibaba-commons-2021.1-API文档-中英对照版.zip

    赠送jar包:spring-cloud-alibaba-commons-2021.1.jar; 赠送原API文档:spring-cloud-alibaba-commons-2021.1-javadoc.jar; 赠送源代码:spring-cloud-alibaba-commons-2021.1-sources.jar; 赠送Maven依赖信息...

    xmlgraphics-commons-2.1-API文档-中英对照版.zip

    赠送jar包:xmlgraphics-commons-2.1.jar; 赠送原API文档:xmlgraphics-commons-2.1-javadoc.jar; 赠送源代码:xmlgraphics-commons-2.1-sources.jar; 赠送Maven依赖信息文件:xmlgraphics-commons-2.1.pom; ...

    spring-data-commons-2.5.5-API文档-中文版.zip

    赠送jar包:spring-data-commons-2.5.5.jar; 赠送原API文档:spring-data-commons-2.5.5-javadoc.jar; 赠送源代码:spring-data-commons-2.5.5-sources.jar; 赠送Maven依赖信息文件:spring-data-commons-2.5.5....

    spring-cloud-commons-3.1.1-API文档-中文版.zip

    赠送jar包:spring-cloud-commons-3.1.1.jar; 赠送原API文档:spring-cloud-commons-3.1.1-javadoc.jar; 赠送源代码:spring-cloud-commons-3.1.1-sources.jar; 赠送Maven依赖信息文件:spring-cloud-commons-...

    hibernate jar包:hibernate-commons-annotations-4.0.1.Final.jar等

    hibernate-commons-annotations-4.0.1.Final.jar hibernate-core-4.1.12.Final.jar hibernate-ehcache-4.1.12.Final.jar hibernate-entitymanager-4.1.12.Final.jar hibernate-jpa-2.0-api-1.0.1.Final.jar ...

    xmlgraphics-commons-2.1-API文档-中文版.zip

    赠送jar包:xmlgraphics-commons-2.1.jar; 赠送原API文档:xmlgraphics-commons-2.1-javadoc.jar; 赠送源代码:xmlgraphics-commons-2.1-sources.jar; 赠送Maven依赖信息文件:xmlgraphics-commons-2.1.pom; ...

    mchange-commons-java-0.2.11.jar

    《mchange-commons-java-0.2.11.jar:深入了解Maven依赖与Java库的构建》 在Java开发中,我们经常会遇到各种各样的jar文件,它们是Java应用程序的基础,提供了丰富的功能和API。"mchange-commons-java-0.2.11.jar...

    spring-cloud-alibaba-commons-2021.1-API文档-中文版.zip

    赠送jar包:spring-cloud-alibaba-commons-2021.1.jar; 赠送原API文档:spring-cloud-alibaba-commons-2021.1-javadoc.jar; 赠送源代码:spring-cloud-alibaba-commons-2021.1-sources.jar; 赠送Maven依赖信息...

    asm-commons

    asm-commons-2.0.jar, asm-commons-2.1.jar, asm-commons-2.2.1-sources.jar, asm-commons-2.2.1.jar, asm-commons-2.2.2-sources.jar, asm-commons-2.2.2.jar, asm-commons-2.2.3.jar, asm-commons-2.2.jar, asm-...

    spring-cloud-commons-3.1.1-API文档-中英对照版.zip

    赠送jar包:spring-cloud-commons-3.1.1.jar; 赠送原API文档:spring-cloud-commons-3.1.1-javadoc.jar; 赠送源代码:spring-cloud-commons-3.1.1-sources.jar; 赠送Maven依赖信息文件:spring-cloud-commons-...

    mchange-commons-java-0.2.15.jar找不到的问题的解决

    c3p0连接mysql8.0.11需要外加mchange-commons-java-0.2.15.jar,maven的pom.xml 中配置了,但是项目中报找不到mchange-commons-java-0.2.15.jar这个文件,可以把此文件下载后,然后解压后把对应的jar包放到maven 库...

    mchange-commons-java-0.2.11-API文档-中文版.zip

    赠送jar包:mchange-commons-java-0.2.11.jar; 赠送原API文档:mchange-commons-java-0.2.11-javadoc.jar; 赠送源代码:mchange-commons-java-0.2.11-sources.jar; 赠送Maven依赖信息文件:mchange-commons-java-...

    junit-platform-commons-1.8.2-API文档-中英对照版.zip

    赠送jar包:junit-platform-commons-1.8.2.jar; 赠送原API文档:junit-platform-commons-1.8.2-javadoc.jar; 赠送源代码:junit-platform-commons-1.8.2-sources.jar; 赠送Maven依赖信息文件:junit-platform-...

    asm-commons-3.3.1.jar

    asm-commons-3.3.1.jar

    junit-platform-commons-1.7.0.jar

    junit-platform-commons-1.7.0.jar

Global site tag (gtag.js) - Google Analytics