我有一个使用Spring-Struts框架在tomcat 8服务器中部署的Web应用程序。该应用程序仅托管在一台服务器中。
应用程序代码就像
一样分层行动| BPO | DAO | DTO | EntityObject
只有少数DTO类implements Serializable
接口,使用ehcache将这些DTO对象写入文件以进行缓存状态。
我们是否真的需要implement Serializable
所有DTO课程的界面?
参考下面的链接,它说没有必要为所有DTO类实现Serializable。
DTO implementation of Serializable interface
如果是这样,DTO对象如何在没有序列化的情况下从客户端转移到服务器端?
答案 0 :(得分:1)
Serializable
使用java.io
,如果您想要将对象保留在会话中,则需要它。其他一些框架在场景后面使用Serializable
来执行序列化。如果您不知道使用java.io.Serializable
对象的序列化位置,最好将此界面添加到DTO。
客户端可能使用其他serialization,如JSON,XML等,但它不会影响在服务器端运行序列化的进程,它应该由您的代码或某些代码单独处理其他框架如Struts或Spring,并不重要。