1.认识事务本身:事务的目的,概念,属性<br> 2.Spring对事务的支持:编程式的事务管理,声明式的事务管理
JdonFramework(简称JF)就是这样一个简单易使的轻量框架。 1. 能够在一两个小时内快速开发简单应用系统。 2. 能够在此架构基础上无缝平滑发展成为一个可方便维护、可灵活拓展、可伸缩的中大型系统。
基于注释(Annotation)的配置有越来越流行的趋势,Spring 2.5 顺应这种趋势,提供了完全基于注释配置 Bean、装配 Bean 的功能,您可以使用基于注释的 Spring IoC替换原来基于XML的配置。本文通过实例详细讲述了Spring2.5基于注释IoC功能的使用。
spring-core.jar这个jar 文件包含Spring 框架基本的核心工具类。Spring 其它组件要都要使用到这个包里的类,是其它组件的基本核心,当然你也可以在自己的应用系统中使用这些工具类。
源代码分析,是一件既痛苦又快乐的事情,看别人写的代码是通过的,但当你能够看明白的时候,相信快乐也会随之而来,为了减少痛苦,更快的带来快乐,在这里希望通过这篇文章对觉得困难的朋友有一个帮助。 本文以spring框架的XmlBeanFactory为入手点进行分析,希望能够以尽量简洁明了的方式给予有需要的朋友一定的帮助。
petstore1.3是一个集客户购物,下订单,管理一体的例子!现实的系统不会是这样单贝儿的,大多数的系统要和多个数据源和其他的EIS(企业信息系统)打交道的。这些外部系统可能是资产信息,ERP。也有可能是一个别的公司的WebService(这东东最近太XX热了)。屁如说,订单的提交可能是一个公司,信用卡服务可能另外的公司,运送又是一个公司。Petstore1.3划分成了多个模块,松耦合的设计架构,允许可以和多个数据源,EIS进行交互。这个例子,分成4个部分:<br> •web购物站点<br> •管理看销售统计,手工接受/拒绝订单,界面也是个web应用<br> •订单处理通过JMS接受/处理订单消息(xml的)用java mail来通知客户通过JMS发订单给供应商为何订单数据库<br> •供应商通过JMS接受订单派送货物给用户提供一个基于web的库存管理维护库存数据库.
理论知识1.依赖注入、控制反转依赖注入:在运行期,由外部容器动态地将依赖对象注入到组件中控制反转:应用本身不负责依赖对象的创建及维护,依赖对象的创建及维护是由外部窗口负责得。这样控制权就由应用转移到了外部容器,控制权的转移就是所谓的反转。2.spring的主要特性。(1)降低组件之间的耦合度,实现软件各层之间的解耦。(2)可以使用容器提供的众多服务,如:事务管理服务、消息服务、JMS服务、持久化服务等等。(3)容器提供单例模式支持,开发人员不再需要自己编写实现代码。(4)容器提供了AOP技术,利用它很容易实现如权限拦截,运行期监控等功能。(5)容器提供的众多辅作类,使用这些类能够加快应用的开发,如:JdbcTemplate、HibernateTemplate.(6)对主流的应用框架提供了集成支持。
什么是动态定时任务:是由客户制定生成的,服务端只知道该去执行什么任务,但任务的定时是不确定的(是由客户制定)。
1.依赖注入、控制反转 依赖注入:在运行期,由外部容器动态地将依赖对象注入到组件中 控制反转:应用本身不负责依赖对象的创建及维护,依赖对象的创建及维护是由外部窗口负责得。这样控制权就由应用转移到了外部容器,控制权的转移就是所谓的反转。 2.spring的主要特性。 (1)降低组件之间的耦合度,实现软件各层之间的解耦。 (2)可以使用容器提供的众多服务,如:事务管理服务、消息服务、JMS服务、持久化服务等等。 (3)容器提供单例模式支持,开发人员不再需要自己编写实现代码。 (4)容器提供了AOP技术,利用它很容易实现如权限拦截,运行期监控等功能。 (5)容器提供的众多辅作类,使用这些类能够加快应用的开发,如:JdbcTemplate、HibernateTemplate. (6)对主流的应用框架提供了集成支持。
本文为了从各个细节说明一个基本struts2+spring2+hibernate3构建网站的架构, Struts:作为基于 MVC 模式的 Web 应用最经典框架,两个项目Struts 和webwork已经集成,成为现在的Struts2。目前的最新版本是2.0.9(2007-7)。<br>Spring: 是一个轻型的容器,利用它可以使用一个外部 XML 配置文件方便地将对象连接在一起。每个对象都可以通过显示一个 JavaBean 属性收到一个到依赖对象的引用,留给您的简单任务就只是在一个 XML 配置文件中把它们连接好。 <br>Hibernate 是一个纯 Java 的对象关系映射和持久性框架,它允许您用 XML 配置文件把普通 Java 对象映射到关系数据库表。使用 Hibernate 能够节约大量项目开发时间,因为整个 JDBC 层都由这个框架管理。这意味着您的应用程序的数据访问层位于 Hibernate 之上,完全是从底层数据模型中抽象出来的。 三种技术到目前已经比较成熟,而且他们都是免费的!让我们对三者集成进行一个初览(简单而不专业):我们用Struts实现从Web(网页,MVC中的View)到后台系统的映射(WebàAction),然后由Spring管理这些Action,把它们作为Bean和其他对象一起处理。这些Bean之间处理业务逻辑、数据、系统状态等,且它们被Spring统一管理,为了区分,就算大概包括MVC的MC部分吧。然后需要持久化的数据由Spring和Hibernate之间的接口交由Hibernate处理(这个属于持久层)。
ActivationDataFlavor 类是 java.awt.datatransfer.DataFlavor 的一个特殊子类。它允许 JAF 通过新的构造方法设置 DataFlavor 类所存储的所有三个值。它还包含 equals 方法中增强的 MIME 解析。除了增强的解析外,其语义与 JDK DataFlavor 类的语义相同。
此前对于AOP的使用仅限于声明式事务,除此之外在实际开发中也没有遇到过与之相关的问题。最近项目中遇到了以下几点需求,仔细思考之后,觉得采用AOP来解决。一方面是为了以更加灵活的方式来解决问题,另一方面是借此机会深入学习SpringAOP相关的内容。本文是权当本人的自己AOP学习笔记。
Spring也提供了声明式事务管理。这是通过SpringAOP实现的。Spring中进行事务管理的通常方式是利用AOP(面向切片编程)的方式,为普通java类封装事务控制,它是通过动态代理实现的,由于接口是延迟实例化的,spring在这段时间内通过拦截器,加载事务切片。原理就是这样,具体细节请参考jdk中有关动态代理的文档。本文主要讲解如何在spring中进行事务控制。动态代理的一个重要特征是,它是针对接口的,所以我们的dao要通过动态代理来让spring接管事务,就必须在dao前面抽象出一个接口,当然如果没有这样的接口,那么spring会使用CGLIB来解决问题,但这不是spring推荐的方式,所以不做讨论.
SSH在J2EE项目中表示了3种框架,既Spring+Struts+Hibernate Struts。
Java应用框架总览综述阿里巴巴的Java应用程序是由一套自己开发的框架来构建的。从横向看,分成三个层次,每一个层次都有一个框架作为基础。 <br>1.表现层(PresentationTier)——负责和WEB用户交互、或通过WebService和外界应用交互。这一层是外界和内部商业逻辑交流的纽带。<br>2.商业逻辑层(BusinessTier)——实现了核心的商业逻辑。通过数据访问层存取数据源中数据。 <br>3.数据访问层(DataAccessTier)——和底层数据源交互,存取数据。也可以和公司内部的其它系统之间通信。从纵向看,可以看到还有一些跨层模块来支持各层次的运作。这些模块也是框架的一部分。应用开发者只需要开发上图中“加阴影”的部分。