Spring/Hibernate/iBatis
log_cd
这个作者很懒,什么都没留下…
展开
-
hibernate get/load/saveOrUpdate/statistics
hibernate中get和load的区别:(1)load方法,hibernate认为该id对应的对象(数据库记录)在数据库中是一定存在的,在用到对象中的其他属性数据时才查询数据库,但是万一数据库中不存在该记录,只能抛ObjectNotFoundEcception异常,所说的load方法抛异常是指在使用该对象的数据时,数据库中不存在该数据时抛异常,而不是在创建这个对象时。由于ses...原创 2008-06-18 15:21:06 · 192 阅读 · 0 评论 -
spring ibatis入门
一、applicationContext.xml[code="xml"] ...原创 2009-04-20 14:16:12 · 71 阅读 · 0 评论 -
Spring 中的AOP学习
例子:1.定义接口和实现(for interceptor)[code="java"]public interface ITest { public abstract void doTest(int i); public abstract void executeTest();}public class Test implements ITest{ public void...2008-03-14 13:43:26 · 77 阅读 · 0 评论 -
配置spring数据源
配置一个数据源 Spring在第三方依赖包中包含了两个数据源的实现类包,其一是Apache的DBCP,其二是 C3P0。可以在Spring配置文件中利用这两者中任何一个配置数据源。DBCP数据源 DBCP类包位于 /lib/jakarta-commons/commons-dbcp.jar,DBCP 是一个依赖 Jakarta commons-pool对象池机制的数据库连...原创 2009-11-06 16:47:12 · 80 阅读 · 0 评论 -
Spring + JPA + Hibernate配置
persistence.xml放到类路径下的META-INF下面[code="xml"] [/code]applicationContext.xml配置[code="xml"] ...原创 2010-01-04 14:24:26 · 329 阅读 · 0 评论 -
Spring2.0 AOP AspectJ 注释实现
[b]一、AOP基本概念[/b][list][*]切面(Aspect): 一个关注点的模块化,这个关注点可能会横切多个对象。事务管理是J2EE应用中一个关于横切关注点的很好的例子。 在Spring AOP中,切面可以使用通用类(基于模式的风格) 或者在普通类中以 @Aspect 注解(@AspectJ风格)来实现。[*]连接点(Joinpoint): 在程序执行过程中某个特定的点,比如...原创 2010-01-04 14:24:56 · 123 阅读 · 0 评论 -
使用AspectJ LTW(Load Time Weaving)
在Java 语言中,从织入切面的方式上来看,存在三种织入方式:编译期织入、类加载期织入和运行期织入。编译期织入是指在Java编译期,采用特殊的编译器,将切面织入到Java类中;而类加载期织入则指通过特殊的类加载器,在类字节码加载到JVM时,织入切面;运行期织入则是采用CGLib工具或JDK动态代理进行切面的织入。 AspectJ采用编译期织入和类加载期织入的方式织入切面,是语言级...原创 2010-01-04 14:25:17 · 677 阅读 · 0 评论 -
hibernate的dialect
一、hibernate的dialect RDBMS方言DB2org.hibernate.dialect.DB2DialectDB2 AS/400org.hibernate.dialect.DB2400DialectDB2 OS390org.hibernate.dialect.DB2390DialectPostgreSQLorg.hi...原创 2009-07-23 10:04:08 · 440 阅读 · 0 评论 -
Spring3 Annotation + Hibernate3-jpa2.0 + CGLIB + 多数据源
一、定义一个测试用Entity。[code="java"]@Entitypublic class Person implements Serializable { private static final long serialVersionUID = 1L; @Id @GeneratedValue @Column(name = "id") private Intege...原创 2010-08-19 09:30:29 · 140 阅读 · 0 评论 -
Hibernate缓存配置/批量处理
Hibernate除了自动对Session级别的事务进行一级缓存外,二级缓存都需要实现org.hibernate.cache.CacheProvider接口,Hibernate已经实现了一些缓存,开发人员可以直接配置使用,同时要启用二级缓存,配置hibernate.cache.use_second_level_cache为true。可选值:[list=1][*]org.hib...原创 2009-03-25 21:50:49 · 138 阅读 · 0 评论 -
Hibernate的一级与二级缓存
缓存是介于应用程序和物理数据源之间,其作用是为了降低应用程序对物理数据源访问的频次,从而提高了应用的运行性能。缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读写数据,在特定的时刻或事件会同步缓存和物理数据源的数据。 缓存的介质一般是内存,所以读写速度很快。但如果缓存中存放的数据量非常大时,也会用硬盘作为缓存介质。缓存的实现不仅仅要考虑存储的介质,还要考虑到管理缓...原创 2009-03-25 21:24:59 · 76 阅读 · 0 评论 -
spring中的事件传播
Spring中提供一些Aware相关的接口, BeanFactoryAware、 ApplicationContextAware、ResourceLoaderAware、ServletContextAware等等,其中最常用到的是ApplicationContextAware。实现ApplicationContextAware的Bean,在Bean被初始后,将会被注入 Applica...2008-02-03 15:30:01 · 110 阅读 · 0 评论 -
学习使用泛型dao
(1)泛型接口GenericDao[code="java"]public interface GenericDao { public T findById(ID id); T findById(ID id, boolean lock); public T load(ID id); List findAll();...2008-06-18 15:49:02 · 100 阅读 · 0 评论 -
Hibernate中的对象one-to-one关系
(1) 通过主健参考,限制2个数据表中的主健使用相同的值create table CUSTOMER( ID bigint not null auto_increment, NAME varchar(15), primary key (ID));create table ADDRESS( ID bigint not null auto_increment, S...原创 2008-06-26 22:55:40 · 123 阅读 · 0 评论 -
Hibernate中one-to-many/many-to-one和many-to-many
one-to-many/many-to-one(1)表结构/**客户表**/create table CUSTOMERS( ID int not null auto_increment, Name varchar(15), primary key(ID));/**订单表**/create table ORDERS( ID bigint not n...2008-06-28 17:03:03 · 240 阅读 · 0 评论 -
spring 事务管理
声明式的事务管理(Declarative transaction management):事务配置方式:[code="java"] [/code][code="java"] classpath:/ org.hibernate.dialect.M...原创 2008-07-08 16:35:04 · 105 阅读 · 0 评论 -
Spring2.X以AspectJ 式AOP 配置事务
(1)配置: Spring的事务管理是通过AOP代理实现的,其中的事务通知由元数据驱动。代理对象与事务元数据结合产生一个AOP代理,它使用一个PlatformTransactionManager实现,配合TransactionInterceptor,在方法调用前后实施事务。[code="java"] springApp ...2008-07-10 13:23:48 · 168 阅读 · 0 评论 -
spring jdbcTemplate使用
[b]一、使用示例[/b](1)springJdbcContext.xml[code="java"] springApp ...2008-07-15 17:17:49 · 205 阅读 · 0 评论 -
过滤器和监听器
延迟加载过滤器 Hibernate 允许对关联对象、属性进行延迟加载,但是必须保证延迟加载的操作限于同一个 Hibernate Session 范围之内进行。如果 Service 层返回一个启用了延迟加载功能的领域对象给 Web 层,当 Web 层访问到那些需要延迟加载的数据时,由于加载领域对象的 Hibernate Session 已经关闭,这些导致延迟加载数据的访问异常。Spr...2008-01-29 17:18:47 · 137 阅读 · 0 评论 -
spring相关配置
1.web.xml中载入spring配置[code="xml"] contextConfigLocation classpath:applicationContext.xml org.springframework.web.context.ContextLoaderListener [/code] ...原创 2008-02-02 09:08:14 · 88 阅读 · 0 评论 -
Spring分布式事务实现
分布式事务是指操作多个数据库之间的事务,spring的org.springframework.transaction.jta.JtaTransactionManager,提供了分布式事务支持。如果使用WAS的JTA支持,把它的属性改为WebSphere对应的TransactionManager。 在tomcat下,是没有分布式事务的,不过可以借助于第三方软件jotm(Java O...原创 2010-11-10 14:28:53 · 1040 阅读 · 0 评论