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 页请下载阅读 -
文档评分