1. ホーム
  2. java

[解決済み] Static Final Long serialVersionUID = 1L [重複]。

2022-03-08 19:18:13

質問

<ブロッククオート

重複の可能性があります。
serialVersionUIDとは何ですか、またなぜそれを使用する必要がありますか?
サーブレット(private static final long serialVersionUID = 1L)において、それは何を意味するのでしょうか?

教授から渡されたこのガイドプログラムについて、1つだけ簡単な質問があります。 このような場合、どのようにすればよいのでしょうか?

package module;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Scanner;

import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * @author JA
 */
public class Servlet_1 extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet{

    static final long serialVersionUID = 1L;

    public void doGet (HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

        response.setContentType("txt/html");

        ServletOutputStream out = response.getOutputStream();

        out.println("<html>");
        out.println("<head><title>Hello Panget</title></head>");
        out.println("<body>");
        out.println("<h1>Hello Panget</h1>");
        out.println("</body></html>");
    }

    protected void doPost (HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
            // Write your program here, Panget.
    }
}

の用途は何ですか? static final long serialVersionUID = 1L; をプログラムしてください。

解決方法は?

その serialVersionUID はユニバーサルバージョン識別子で Serializable クラスです。非直列化では、読み込まれたクラスが直列化されたオブジェクトに正確に対応することを確認するために、この番号を使用します。一致するものがない場合は InvalidClassException が投げられる。