text文档 Spring Framework 1.2.4 Changelog

223.73 KB 77 页 0 评论
语言 格式 评分
英语
.txt
3
摘要
文档详细记录了Spring Framework 1.2.4版本的变更日志,涉及多个包的功能更新和改进。主要包括了事务管理的增强,如AbstractPlatformTransactionManager的回滚处理和JTA事务的支持;AOP框架的改进,包括引入AbstractTraceInterceptor和自定义跟踪拦截器;Web模块的优化,如HtmlUtils的改进和多视图支持;beans包的增强,包括属性编辑器和工厂方法的处理;以及Context和Core包的功能扩展,如资源处理和JDBC操作的优化。
AI总结
《Spring Framework 1.2.4 Changelog》主要记录了Spring Framework版本1.2.4的更新内容,涵盖了多个包的功能改进、新特性和问题修复。以下是核心内容的总结: --- ### **1. Transactions** - **AbstractPlatformTransactionManager**: - 新增了默认为`false`的`shouldCommitOnGlobalRollbackOnly`回调方法。 - 如果尝试提交仅回滚事务,则会抛出`UnexpectedRollbackException`。 - `JtaTransactionManager`现在期望调用`doCommit`以便JTA处理全局回滚(例如超时情况)。 --- ### **2. AOP** - **新增功能**: - 引入了`AbstractTraceInterceptor`作为所有跟踪拦截器的超类,支持静态或动态日志记录。 - 废弃了`TraceInterceptor`,推荐使用`SimpleTraceInterceptor`。 - `PerformanceMonitorInterceptor`和`JamonPerformanceMonitorInterceptor`被重构为`AbstractTraceInterceptor`的子类。 - 新增了`CustomizableTraceInterceptor`,支持基于模式的进入和退出消息。 - **日志改进**: - 所有跟踪拦截器现在使用Commons Logging的`trace`级别日志,而非`info`或`debug`。 --- ### **3. Web** - **HtmlUtils**: - 重构了`htmlEscape`方法,默认返回命名实体引用。 - 新增了`htmlEscapeDecimal`和`htmlEscapeHex`方法,分别支持十进制和十六进制逃逸样式。 - 修复了`htmlUnescape`,正确处理所有实体引用,包括十进制和十六进制样式。 - **视图与控制器**: - 新增了`AbstractUrlBasedView`和`UrlBasedViewResolver`,用于一致处理视图URL。 - `VelocityView`的`templateName`属性更名为`url`,并从`AbstractUrlBasedView`继承。 - `VelocityViewResolver`新增了便利类,继承自`UrlBasedViewResolver`。 - **表单与绑定**: - 修复了`FreeMarker`宏`formSingleSelect`,正确比较数值选项。 - `BindStatus`和`EscapedErrors`不再对非字符串值进行字符串化和HTML转义。 --- ### **4. Beans** - **Bean定义和工厂**: - `ConstructorArgumentValues`现在使用`List`存储`ValueHolder`,以保持定义顺序。 - `BeanDefinitionVisitor`从`PropertyPlaceholderConfigurer`中分离出来,支持可重用的Bean定义遍历。 - `BeanFactory`的`isSingleton`方法现在检查创建对象的单例状态。 - **属性编辑和绑定**: - `BeanWrapperImpl`支持索引和映射属性,并在调试级别记录属性值设置。 - `BeanWrapperImpl`在设置属性值时使用自定义编辑器。 - **自动化装配**: - `AutowireCapableBeanFactory`在选择构造函数时,优先使用原始参数匹配而非转换匹配。 - `BeanDefinition`新增了`autodetect`自动装配模式。 --- ### **5. 核心功能** - **资源管理**: - `Resource`接口新增了`getFilename`和`createRelative`方法。 - 提供了更高效的`equals`和`hashCode`实现,适用于所有具体`Resource`类。 - **JDBC**: - `JdbcTemplate`的`queryForList`方法在JDK版本大于等于1.4时返回`LinkedHashMap`,以保留列顺序。 - 新增了`ByteArrayResource`适配器,支持从本地内容创建邮件附件。 - **日志与调度**: - `TimerFactoryBean`支持`period`小于等于0的`SchedulerTimerTasks`,用于一次性执行。 - `MethodInvokingTimerTaskFactoryBean`在方法调用异常时记录日志。 --- ### **6. Web敏捷开发** - **视图与国际化**: - `AbstractJasperReportsView`暴露Spring管理的`Locale`和`MessageSource`,支持JasperReports的国际化。 - 重构了`AbstractJasperReportsView`以正确处理通过HTTPS的Internet Explorer请求。 - **表单处理**: - `AbstractFormController`和`AbstractWizardFormController`新增了`getFormSessionAttributeName`和`getPageSessionAttributeName`方法。 - `RequestContext`在`DispatcherServlet`外也可以工作,回退到根上下文。 --- ### **7. ORM与数据访问** - **Hibernate**: - 新增了`namingStrategy`属性到`LocalSessionFactoryBean`,支持自定义命名策略。 - `HibernateTransactionManager`支持Hibernate JCA连接器的JTA事务管理器自动检测。 - **iBatis**: - `SqlMapClientOperations`/`Template`新增了`queryWithRowHandler`和`queryForPaginatedList`方法。 --- ### **8. 远程与测试** - **远程调用**: - HTTP调用策略新增了基于Java序列化的远程调用支持。 - `HttpInvokerClientInterceptor`和`HttpInvokerServiceExporter`支持`RemoteInvocationFactory`/`Executor`接口。 - **测试功能**: - `AbstractTransactionalSpringContextTests`新增了`endTransaction`方法,支持提前结束事务。 --- ### **9. 构建与依赖** - **依赖注入与配置**: - `PropertyPlaceholderConfigurer`支持构造函数参数和系统属性的占位符解析。 - XML Bean定义格式新增了`idref`标签,用于引用Bean ID作为字符串。 - **日志与监控**: - `Log4jConfigListener`支持`file:` URL作为日志配置位置。 --- ### **10. 重大改进与重构** - **包重构**: - `PagedListHolder`和`MutableSortDefinition`类移到了`beans.support`包。 - `MethodInvoker`重构为找到匹配方法时考虑可分配的参数。 - **性能优化**: - `PerformanceMonitorInterceptor`被重构为`AbstractTraceInterceptor`的子类。 - `BeanPostProcessor`接口重构为`postProcessBeforeInitialization`和`postProcessAfterInitialization`。 --- 以上是《Spring Framework 1.2.4 Changelog》的核心内容总结,涵盖了框架在事务、AOP、Web、Beans等多个方面的改进和新增功能。
P1
P2
P3
P4
P5
P6
P7
下载文档到本地,方便使用
- 可预览页数已用完,剩余 70 页请下载阅读 -
文档评分
请文明评论,理性发言.