我有一个扩展Servlet的可实现类
public class FileDownload extends HttpServlet{
@SuppressWarnings("compatibility:6754389671327954013")
private static final long serialVersionUID = 1L;
private ResultSet rset;
......
}
我的问题是:
rset 对象是否在complie / run-time上自动转换为 transient 对象,还是必须将其明确标记为 transient ? (这是我的IDE JDeveloper提出的警告)。
答案 0 :(得分:1)
你必须自己调用transient
。但是你不能serialize
一个对象,除非它实现了Serializable
interface.ResultSet就是这种对象。
答案 1 :(得分:1)
不,序列化不会忽略该字段 - 如果您尝试序列化java.io.NotSerializableException
的实例,则会获得FileDownload
。标记transient
。顺便说一句,它在Servlet
中作为字段做了什么?