1. 前言
2. 我们需要
Spring 和 EJB3
3. Spring is here
4. 对Spring集成的示例性说明
5.
EJB 3的支持
6. 总结
1. 前言
本教程介绍 AOM 2.0是怎样与 Spring、EJB3无缝集成的,在阅读本文之前,我建议你首先阅读前几篇文章:
AOM 2.0的神奇魔力之一:约定优于配置
AOM 2.0的神奇魔力之二:国际化
AOM 2.0的神奇魔力之三:输入校验
AOM 2.0的神奇魔力之四:模型事件
AOM 2.0的神奇魔力之五:LiteBean
2. 我们需要 Spring 和 EJB3
一个
Web应用并不仅仅只是UI展现层那么简单,我们还要考虑数据持久化、事物完整性保障等等。我们即希望 AOM 能够提供完整解决方案,又不需要它重新发明轮子,因为后台的业务编程模型已经有了优秀的并且经过业界验证的解决方案,如 Spring、EJB 3等。其中,又以 Spring 在业界的使用更为广泛,因此,本文主要介绍 AOM 是怎样和 Spring 紧密集成的,并顺带着介绍一下 EJB 3的支持。
3. Spring is here
我们说:AOM与Spring是无缝集成的。各位同学一看到“无缝集成”这几个字,想必嘴角一撇,心想:典型的广告用语。那么,AOM在与 Spring 集成这方面上,到底做了哪些工作?简单介绍,三个特性而已:
所有在 Spring 中定义的 Bean,都能够被当成 AOM 中的 LiteBean 直接使用。
你可以理解成:假设你在 Spring 中定义了一个 MySpringBean,那么,在AOM中,你可以 #{MySpringBean} 直接引用此Bean。
所有在 AOM 中定义的 LiteBean,都能够被当成 Spring 中的 Bean 直接使用。
你可以理解成:假设你在 AOM 中定义了一个 MyLiteBean,那么,在 Spring 中,你可以通过 ApplicationContext.getBean("MyLiteBean")获得它
在 Spring 中定义的 Bean,同样能够获得 IoVC 的支持。
你可以理解成:假设你在某个 Spring Bean的某个属性上加以 @Bind 的声明,那么该属性依然可以被绑定到页面控件
至于有了上述三个特性,算不算得“无缝集成”,则是仁者见仁,智者见智了。
4. 对Spring集成的示例性说明
做个简单的例子,来验证第一点:所有在 Spring 中定义的 Bean,都能够被当成 AOM 中的 LiteBean 直接使用。
首先将 Spring 等相关 jar 包部署到 WEB-INF/lib 目录中,然后在web.xml中增加以下内容(这都是 Spring 的相关知识):
org.springframework.web.context.ContextLoaderListenerorg.springframework.web.context.request.RequestContextListener再在 WEB-INF 中放一个 applicationContext.xml 文件,其内容及详细注释如下:
TAG:
Spring
下载本文示例代码
AOM 2.0的神奇魔力之六:与 Spring/EJB3的无缝集成AOM 2.0的神奇魔力之六:与 Spring/EJB3的无缝集成AOM 2.0的神奇魔力之六:与 Spring/EJB3的无缝集成AOM 2.0的神奇魔力之六:与 Spring/EJB3的无缝集成AOM 2.0的神奇魔力之六:与 Spring/EJB3的无缝集成AOM 2.0的神奇魔力之六:与 Spring/EJB3的无缝集成AOM 2.0的神奇魔力之六:与 Spring/EJB3的无缝集成AOM 2.0的神奇魔力之六:与 Spring/EJB3的无缝集成AOM 2.0的神奇魔力之六:与 Spring/EJB3的无缝集成AOM 2.0的神奇魔力之六:与 Spring/EJB3的无缝集成AOM 2.0的神奇魔力之六:与 Spring/EJB3的无缝集成AOM 2.0的神奇魔力之六:与 Spring/EJB3的无缝集成