边城愚人

如果我不在边城,我一定是在前往边城的路上。

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  31 随笔 :: 0 文章 :: 96 评论 :: 0 Trackbacks

Framework

     摘要: 在结束了上一篇Spring 1.x中AOP的使用之后,我用马不停蹄的打开Eclipse,做着Spring2.X下了AOP的Sample。在上一篇文章中的配置过程中,由于对自动代理不是很熟,出现了循环引用的异常信息。当初在阅读PicoContainer源码时看到循环引用不以为然,后来在学习AspectJ时小有印象,这次在折腾了半个多小时后可加深了印象。  阅读全文
posted @ 2007-08-30 08:42 kafka0102 阅读(2265) | 评论 (2)  编辑

     摘要: 本文通过一个“Hello World”级别的横切性功能介绍Spring1.X中AOP的使用,并结合Spring的经典的声明式事务管理给出Spring AOP配置中的经典方案。在Spring2出来以后,Spring1.X的AOP使用方式已经“不合时宜”了,因此如果你是在新项目中采用Spring AOP,建议使用Spring2中的AOP使用方式。关于Spring2.X中AOP的使用,参考该文的姊妹文章Spring2.X中AOP的使用。

一提到AOP的应用,人们就会本能地提起日志功能,它就像一门语言的“Hello World”一样被人们无数次提起。也许有人会疑问除了“不实用”的日志功能,AOP还能做些什么?可能在很多时候我们并不需要自己实现一个AOP功能,尤其是在拥有了很多优秀的AOP应用框架来解决通用的横切性问题的情况下(比如Spring的事务管理、比如Acegi的安全管理、比如WebWork的拦截功能)。但问题总是层出不穷的,总会有些问题可能需要我们自己AOP一下。  阅读全文
posted @ 2007-08-30 08:38 kafka0102 阅读(2324) | 评论 (1)  编辑

     摘要: Hibernate提供客户化映射类型接口,使用户能以编程方式创建自定义的映射类型来将持久化类任意类型的属性映射到数据库中。使用客户化映射类型,需要实现org.hibernate.usertype.UserType接口。这是个强大的功能,也是Hibernate的最佳实践之一。我们经常提到 ORM中很困难的一点便是O的属性和R的属性不能一一映射,而Hibernate提供的UserType无疑给出了一个很好的解决方案。本文给出使用客户化映射类型的两个例子,算是对Hibernate初学者的抛砖。  阅读全文
posted @ 2007-08-15 10:32 kafka0102 阅读(1498) | 评论 (0)  编辑

     摘要: Hibernate的检索策略包括类级别检索策略和关联级别检索策略。
类级别检索策略有立即检索和延迟检索,默认的检索策略是立即检索。在Hibernate映射文件中,通过在上配置lazy属性来确定检索策略。对于Session的检索方式,类级别检索策略仅适用于load方法;也就说,对于get、qurey检索,持久化对象都会被立即加载而不管lazy是false还是true。一般来说,我们检索对象就是要访问它,因此立即检索是通常的选择。由于load方法在检索不到对象时会抛出异常(立即检索的情况下),因此我个人并不建议使用load检索;而由于中的lazy属性还影响到多对一及一对一的检索策略,因此使用load方法就更没必要了。

关联级别检索策略有立即检索、延迟检索和迫切左外连接检索。对于关联级别检索,又可分为一对多和多对多、多对一和一对一两种情况讨论。  阅读全文
posted @ 2007-08-11 13:33 kafka0102 阅读(1022) | 评论 (0)  编辑

     摘要: JDK内建的任务调度工具类有Timer和TimerTask类,对于简单的任务调度,JDK的Timer就能够胜任。一般来说,Timer应该随程序启动后一直运行。如果是web程序,可以通过listener加载Timer实例。对于普通的应用程序,需要将Timer设置成非后台线程才行。  阅读全文
posted @ 2007-07-19 09:50 kafka0102 阅读(2891) | 评论 (4)  编辑

     摘要: 本文主要介绍如何使用简单的Spring邮件抽象层来实现邮件发送功能,对于JavaMail中的API并不做介绍。通过对比JavaMail的API和Spring的邮件抽象层,我觉得,Spring的邮件抽象层优点就是简化了代码量,并能充分利用IOC功能;缺点就是要使用部分Spring API,使程序与第三方框架耦合。关于这方面的内容,可以参考Spring的参考手册。  阅读全文
posted @ 2007-07-15 20:41 kafka0102 阅读(2669) | 评论 (1)  编辑