java - Spring Controller /组件实现可序列化

标签 java spring spring-mvc serialization

在最近的一个基于 Web 的 Java 项目中,我在很多地方看到了基于 Spring 的 Controller/Component 实现 Serializable

我很好奇,为什么 Controller/Component 必须实现 Serializable

我认为这样做是错误的做法,到目前为止搜索任何方案来实现 Serializable 都没有产生任何结果。我认为它违反了MVC原则,是非常规的。您可能希望将域/业务对象与 Controller /组件分开。

我想在代码库中纠正这种不良做法,但只是想确保我有这样做的理由。

任何说明此案例的解释/场景都将不胜感激。

最佳答案

Controller 不需要Serializable。它们是无状态的,只是在模型和 View 之间进行调解。其他无状态组件也可以这样说。让它们Serializable 没有任何好处。

然而,有状态模型对象通常是 Serializable,因为它们有时被放置在 HttpSession 中。应用服务器要求 session 中的对象可序列化,以用于复制和持久化目的。

关于java - Spring Controller /组件实现可序列化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21323336/

相关文章:

eclipse - 在 spring-maven 项目的 eclipse helios 中不显示在服务器上运行选项

java - Hibernate事务超时事件

java - 从键迭代 LinkedHashMap 值

java - 更改形状 XML Android 的颜色

java - 如何将 xml 符号转换为基于注释的符号 : Spring - Java

java - 如何在 spring mvc 中对特定请求执行过滤器?

java - StaxEventItemWriter - 文件不可写问题

java - 在方法上同时使用 @RequestMapping 和 @ModelAttribute

java - 在android中读取xml的最佳方式是什么?

java - 为什么用maven在Intellij中构建后总是缺少文件?