| 语言 | 格式 | 评分 |
|---|---|---|
英语 | .txt | 3 |
| 摘要 | ||
文档详细记录了Spring Framework 1.2.8版本的主要变更,包括新功能的引入、性能优化、错误修复及对旧版本的兼容性处理。主要内容涵盖BeanFactory的改进、AOP框架的优化、事务管理器的增强、JdbcTemplate的改进、对旧版本的兼容性处理、Velocity和FreeMarker视图的支持、Tiles整合、新的日志记录机制、新的控制器方法及参数解析、新的验证机制、新的视图分辨率及布局支持、新的数据绑定及错误处理机制、新的JDBC和Hibernate支持、新的调度和定时任务支持、新的测试框架支持以及新的文档和教程。文档还提到了对多种第三方库(如Velocity、Tiles、Quartz、JDBC、Hibernate等)的支持和优化。 | ||
| AI总结 | ||
以下是文档内容的中文总结:
---
### **Spring Framework 1.2.8 版本更新日志**
#### **1.2.8 版本(2006年7月5日)**
- **General**
- 将“tiger”源码树包含在源码构建中。
- **org.springframework.aop 包**
- 修复了 `Cglib2AopProxy`,使其注册显式给定的 `ClassLoader` 到 CGLIB 增强器。
- 修复了 `CustomizableTraceInterceptor`,使其在异常消息中暴露实际调用时间。
- 在 `JamonPerformanceMonitorInterceptor` 中添加了 `trackAllInvocations` 标志,用于在不记录日志的情况下收集统计信息。
- **org.springframework.beans 包**
- `BeanUtils` 在 bean 实例化失败时抛出显式的 `BeanInstantiationException`。
- 修复了 `BeanWrapperImpl`,使其将空输入转换为 null 而不是包含 null 元素的数组。
- 修改了 `MutablePropertyValues` 的 `addPropertyValue` 方法签名以保持与 Spring ≤1.2.6 的二进制兼容性。
- 添加了 `CharArrayPropertyEditor`,用于将字符串值转换为字符数组。
- `CharacterEditor` 支持通过字面字符串传递 Unicode 规范(例如 `\u00F6`)。
- `FieldRetrievingFactoryBean` 可以访问非公共字段。
- 在 `PropertiesFactoryBean` 中添加了 `propertiesArray` 属性,用于合并多个本地 `Properties` 实例。
- 修复了 `AbstractBeanFactory`,避免在单例销毁时发生潜在的死锁。
- 修复了 `DefaultListableBeanFactory`,使其在显式单例对象已注册时不会预实例化 bean 定义。
- 在 `BeanDefinitionReader` 和 `AbstractBeanDefinitionReader` 中添加了 `loadBeanDefinitions(String[] locations)` 方法。
- **org.springframework.context 包**
- 优化了 `AbstractMessageSource`,使其在父上下文中定义消息并在子上下文中定义消息参数时 eagerly 解决参数。
- **org.springframework.core 包**
- 修复了 `NestedXxxException`,使其正确处理根原因中的 null 消息,通过使用原因的 `toString()` 方法。
- 修复了 `FileSystemResource/UrlResource`,使其保留路径中的前导 `.../` 部分,构建正确的相对路径。
- **org.springframework.jdbc 包**
- 添加了针对 DB2 和 HSQLDB 的更多默认 SQL 错误代码。
- 优化了 `NativeJdbcExtractorAdapter`,使其在提取失败时重试使用 `DatabaseMetaData` 连接(针对 Hibernate 3.1)。
- 将 `JdbcTemplate` 的 `query(PreparedStatementCreator, PreparedStatementSetter, ResultSetExtractor rse)` 方法设为 public。
- 改善了 `JdbcTemplate` 对 ignored SQLWarnings 的日志记录,包括 SQL 状态和错误代码。
- **org.springframework.util 包**
- 引入了 `Assert` 类,主要用于检查方法参数和框架内的不变量。
- `DataBinder` 不接受空字符串(不包含文本内容)作为必填字段的值。
- `DataBinder` 在抑制非允许字段时记录警告(即未在 `allowedFields` 中指定的字段)。
- 在 `RequestUtils` 中添加了用于提取和转换请求参数数组的便捷方法。
- 引入了 `ServletContextResourcePatternResolver`,用于在 Web 应用的上下文中查找匹配资源(即使 WAR 包未展开)。
- 修复了 `DispatcherServlet`,使其在 `doService` 中重用 `getLastModified` 中缓存的 `HandlerExecutionChain`。
- 在 `ModelAndView` 中添加了 `addAllObjects` 方法,用于批量添加模型对象(相当于 `getModel().putAll`)。
- 在 `SimpleMappingExceptionResolver` 中添加了 `defaultStatusCode` 属性,指定错误视图的默认 HTTP 状态码。
- **其他改进**
- `UrlPathHelper` 修复了在获取请求 URI 时上下文路径不一致的问题。
- `RedirectView` 在 `contextRelative` 为 true 时,如果 URL 以斜杠开头,则在 URL 前面添加上下文路径。
- `VelocityView` 添加了 `createVelocityContext` 钩子,用于使用不同的 Velocity Context 实现。
- URLBasedViewResolver 支持 `redirect:` 前缀,用于通过特殊视图名称实现重定向。
---
#### **1.1.1 版本(2004年9月30日)**
- **org.springframework.aop 包**
- 修复了 `Cglib2AopProxy`,防止受保护方法被代理(针对 SPR-357)。
- 引入了新的 `IntroductionInfo` 接口,允许在不使用 `IntroductionAdvisor` 的情况下进行引入。
- `DelegatingIntroductionInterceptor` 修复了未包装的检查异常。
- **org.springframework.web 包**
- `UrlPathHelper` 修复了在获取请求 URI 时上下文路径大小写不一致的问题(在 Resin 上可能发生)。
- `CommonsMultipartResolver` 修复了在处理多部分请求时的查询参数暴露问题。
- `AbstractFormController` 和 `AbstractWizardFormController` 添加了调试日志以记录会话属性的添加/移除操作。
- `AbstractWizardFormController` 允许通过覆盖 `getPageCount` 和 `getViewName` 方法实现动态页面。
- `MultiActionController` 的日志级别从 INFO 更改为 DEBUG。
- 在 `InternalPathMethodNameResolver` 中添加了 `prefix` 和 `suffix` 属性,用于指定方法名称的前缀/后缀。
- 在 `ParameterMethodNameResolver` 中添加了 `methodParamNames` 和 `logicalMappings` 属性。
- 移除了已弃用的 `BindStatus` 类(从 `servlet.tags` 移到 `servlet.support`)。
- `BindTag` 修复了在嵌套使用时保存和重新暴露 `status` 值的问题。
- 引入了 `VelocityLayoutView`,模拟 Velocity 的 `VelocityLayoutServlet` 功能。
- `AbstractXlstView` 添加了 `errorListener` 属性,并为 XSLT 转换器注册了默认的 `ErrorListener`。
---
#### **1.1.5 版本(2005年2月28日)**
- **文档改进**
- 将 Tapestry 集成内容移到独立章节(“与其他 Web 框架集成”)。
- 优化了 `AdvisedSupport`,使其保留代理接口的顺序以生成基于 JDK 的代理。
- **其他改进**
- 支持通过 Hibernate 查询超时设置事务超时。
- 修复了 `RmiServiceExporter` 中的 RMI 代理检测问题。
- 引入了 `WebApplicationObjectSupport` 方便基类。
- 优化了 `WebContentGenerator` 的缓存控制选项。
- 修复了 `AbstractUrlHandlerMapping` 中的 `initHandler` 方法。
- 在 `SimpleUrlHandlerMapping` 中添加了 `urlMap` 属性。
- 修复了 `RequestContext` 和 `BindErrorsTag` 的异常行为。
- 重新引入了 `ContextLoaderServlet` 以支持 Servlet 2.2 容器。
- 引入了 Tiles 支持,包括 `TilesView` 和 `TilesConfigurer`。
- 添加了对 Tiles 组件控制器的 Spring 感知支持。
---
#### **1.2 RC1 版本(2005年3月28日)**
- **架构改进**
- 移除了所有自 1.1 最终版本之前已弃用的类和方法。
- 将 AOP 联盟接口添加到 `spring-aop.jar` 和 `spring.jar`,避免依赖 `aopalliance.jar`。
- 将 `spring-core.jar` 拆分为 `spring-core.jar`(核心工具)和 `spring-beans.jar`(Bean 支持和容器)。
- 将 `spring-dao.jar` 拆分为 `spring-dao.jar`(DAO 接口和事务支持)和 `spring-jdbc.jar`(JDBC 支持)。
- 将 `spring-context.jar` 拆分为 `spring-context.jar`、`spring-support.jar`(包含 JMX 支持)和 `spring-remoting.jar`。
- 将 `spring-orm.jar` 拆分为 `spring-orm.jar`(不包含 Hibernate)和 `spring-hibernate.jar`(包含 Hibernate 2/3 支持)。
- **其他改进**
- 弃用了 `RegexpMethodPointcut` 类,建议使用 `Perl5RegexpMethodPointcut` 或 `JdkRegexpMethodPointcut`。
- 修复了 `AbstractAutoProxyCreator`,使其在实例化目标 bean 之前检查自定义 `TargetSourceCreator`。
- 引入了 `LazyInitTargetSourceCreator`,用于为标记为 `lazy-init` 的 bean 自动创建 `LazyInitTargetSource`。
---
#### **0.9.1 版本(2003年8月8日)**
- **核心改进**
- 修复了 `XMLBeanFactory` 中的错误日志记录问题。
- 支持通过 XML 实体包含 bean 定义文件。
- 允许 Spring bean 定义 DTD 中的映射条目为列表。
- 引入了 `init-method` 属性用于 XML bean 定义。
- 添加了 `BeanFactoryPostProcessor` 钩子,用于覆盖 bean 定义值。
- **其他改进**
- 修复了 `StoredProcedure` 的事务参与问题。
- 移动了 `DataSourceTransactionManager` 到 `jdbc.datasource` 包。
- 修复了 `HibernateTransactionManager` 的事务日志记录问题。
- 引入了新的方便基类用于 JDBC、Hibernate 和 JDO DAO。
---
#### **1.0 M1 版本(2003年8月30日)**
- **核心改进**
- 引入了 `DisposableBean` 接口和 `destroy-method` 属性用于 XML bean 定义。
- 支持 CSV 格式的 bean 名称以定义多个别名。
- **其他改进**
- 修复了 `JndiObjectFactoryBean`,使其在指定方案时不添加容器前缀。
- 修复了 `LocalSessionFactoryBean`,使其实现 `DisposableBean` 接口。
- 引入了新的教程(如 Petclinic 和 MVC 分步教程)。
- 更新了所有样本应用程序的 `views.properties` 文件,使用 `(class)` 和 `(parent)`。
---
以上是对文档内容的总结,涵盖了主要版本的更新重点和关键改进。 | ||
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余
82 页请下载阅读 -
文档评分














Spring Framework 1.2.8 Changelog
Spring Framework 1.2.8 Reference