1

私は次の問題を抱えています:

次のコードを含むJSPファイルがあります。

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"     "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Mehr Tutorials gibt es auf: http://www.itblogging.de</title>
</head>
<body>

Um eine Lieferung aufzugeben bitte die folgenden Daten ausfüllen:<br />
<hr />
<form method="GET" name="Lieferung" action="LoginCheck">
Kennzeichnung<br />
<input type="text" name="ID" /><br />
Abholpunkt<br />
<input type="text" name="Start" /><br />
Lieferpunkt<br />
<input type="text" name="End" /><br />
Kontaktmail<br />
<input type="text" name="Mail" /><br />
Link<br />
<input type="text" name="Link" /><br />
<input type="submit" value="Lieferung aufgeben" />
<input type="reset" value="reset" />
</form>

</body>
</html>

送信ボタンをクリックすると、サーブレットは次のクラスのオブジェクトを作成します。

package servlet;

public class Lieferinhalt {

    String link = "";
    String ID ="";
    String von ="";
    String nach ="";
    String mail ="";

    void setLink(String a) {
        this.link = a;
    }

    void setID(String a) {
        this.ID= a;
    }

    void setVon(String a) {
        this.von = a;
    }

    void setNach(String a) {
        this.nach = a;
    }

void setMail(String a) {
    this.mail = a;
}
}

次に、サーブレットは、JSPファイルからの情報をこのクラスのオブジェクトに配置し、テストのためだけに、オブジェクトの値を示すHTMLコードを作成します。次のようになります。

package servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;



public class LoginCheck extends HttpServlet {
    private static final long serialVersionUID = 1L;

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
    {
         response.setContentType("text/html");
        PrintWriter out = response.getWriter();

        String id = request.getParameter("ID");
        String start = request.getParameter("Start");
        String end = request.getParameter("End");
        String mail = request.getParameter("Mail");
        String link = request.getParameter("Link");     

        Lieferinhalt a = new Lieferinhalt();
        String docType =
                "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 "+
                "Transitional//EN\">\n";

        a.setID(id);
        a.setVon(start);
        a.setNach(end);
        a.setMail(mail);
        a.setLink(link);



        out.println(docType + "<HTML>\n"+
                "<HEAD><TITLE>HalloWelt</TITLE></HEAD>\n"+
                "<BODY BGCOLOR=\"#FDF5E6\""+
                "<H1>Servlet funktioniert!</H1>"+ "<br />" +
                "Die ID war: " + a.ID + "<br />" +
                "Der Startpunkt war: " + a.von + "<br />" +
                "Der Endpunkt war: " + a.nach + "<br />" + 
                "Die Mail war: " + a.mail + "<br />" + 
                "Der Link war: " + a.link + "<br />" +
                "</BODY></HTML>");

    }
}

私がやりたいのは、このオブジェクトをデータベースのようなものに保存することです。SQLやその他のデータベース言語の使用は許可されていません。永続的なArrayListのようなものかそのようなものを考えました。それは可能ですか?または他の/より良い方法はありますか?それらはどのように機能しますか?

ありがとう!

4

1 に答える 1

1

そのJavaオブジェクトをファイルシステムにシリアル化できます。それを試してみてください。

フォーマットには多くの選択肢があります。Javaシリアル化、XML、JSON、protobufなどです。パーサーは簡単に利用でき、データはプレーンテキストであるため、XMLの使用をお勧めします。

于 2012-05-10T13:50:14.963 に答える