i 触及下列问题:
I m 保存一名ArrayList,作为档案。 如果档案确实存在,就会装上装货,而不是 exception。
然后,我想给阿雷拉主义者增加一些东西,并再次予以拯救。 但是,当阿雷拉派开放时,那是空的。 错误在哪里?
When i throw out the ArrayList bevor the huge comment in the servlet, everything is working fine so it is possible to create an empty arraylist and add the object with alle the information. But the saving of this updated ArrayList seems to be the problem.
我不知道问题究竟是什么? 为什么会发生。 我认为,《塞莱宣言》中的巨大评论是round的。 这里:
ArrayList<Lieferinhalte> auftraege = new ArrayList();
Lieferinhalte l = new Lieferinhalte();
l.setID(id);
l.setVon(start);
l.setNach(end);
l.setMail(mail);
l.setLink(link);
open o = new open();
auftraege = o.getAuftraege();
auftraege.add(l);
/*-----------> PROBLEM<-------------*/
File file = new File("C:\Users\Christoph\workspace\ServletTest\auftraege.ser");
speichern s = new speichern();
s.abspeichern(auftraege);
open o2 = new open();
auftraege = o2.getAuftraege();
out.println(docType + "<HTML>
"+
"<HEAD><TITLE>HalloWelt</TITLE></HEAD>
"+
"<BODY>" +
"Servlet funktioniert! <br /><br />");
这里是《谅解守则》的其余部分:
“Serlet”,“Stings”一开始便从一个装上该信箱的垃圾箱获取信息。
a. 一揽子保护措施;
import java.io.*;
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");
String docType =
"<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 "+
"Transitional//EN">
";
ArrayList<Lieferinhalte> auftraege = new ArrayList();
Lieferinhalte l = new Lieferinhalte();
l.setID(id);
l.setVon(start);
l.setNach(end);
l.setMail(mail);
l.setLink(link);
open o = new open();
auftraege = o.getAuftraege();
auftraege.add(l);
/*-----------> PROBLEM<-------------*/
File file = new File("C:\Users\Christoph\workspace\ServletTest\auftraege.ser");
speichern s = new speichern();
s.abspeichern(auftraege);
open o2 = new open();
auftraege = o2.getAuftraege();
out.println(docType + "<HTML>
"+
"<HEAD><TITLE>HalloWelt</TITLE></HEAD>
"+
"<BODY>" +
"Servlet funktioniert! <br /><br />");
for(int i = 0; i < auftraege.size(); i++) {
String id2 = auftraege.get(i).ID;
String start2 = auftraege.get(i).von;
String end2 = auftraege.get(i).nach;
String mail2 = auftraege.get(i).mail;
String link2 = auftraege.get(i).link;
out.println("Die ID war: " + id2 + "<br />" +
"Der Startpunkt war: " + start2 + "<br />" +
"Der Endpunkt war: " + end2 + "<br />" +
"Die Mail war: " + mail2 + "<br />" +
"Der Link war: " + link2 + "<br />");
}
out.println("<a href= index.jsp >Hier</a> geht es zurück zur Eingabemaske!" +
"</BODY></HTML>");
}
}
储蓄类别:
a. 一揽子保护措施;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;
import java.io.OutputStream;
import java.util.ArrayList;
public class speichern {
public void abspeichern(ArrayList<Lieferinhalte> a) {
OutputStream outputStream = null;
try
{
// Byteorientierten Ausgabekanal Öffnen
outputStream = new FileOutputStream("auftraege.ser");
// Objektausgabekanal für Serialisierung Öffnen
ObjectOutputStream objectOutput = new ObjectOutputStream(outputStream);
// Objekte serialisiert in Datei ausgeben
objectOutput.writeObject(a);
// Ausgabekanal schließen
objectOutput.close();
} catch (IOException e)
{
e.printStackTrace();
} finally
{
try
{
outputStream.close();
} catch (Exception e)
{
e.printStackTrace();
}
}
}
}
The load class:
a. 一揽子保护措施;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.util.ArrayList;
public class open {
ArrayList<Lieferinhalte> a;
open() {
try
{
// Serialisiertes Objekt
FileInputStream inputStream = new FileInputStream("auftraege.ser");
// Deserialisierung
ObjectInputStream objectInput = new ObjectInputStream(inputStream);
// String auslesen
this.a = (ArrayList<Lieferinhalte>) objectInput.readObject();
} catch (IOException e)
{
speichern s = new speichern();
ArrayList<Lieferinhalte> auftraege = new ArrayList();
s.abspeichern(auftraege);
open o = new open();
this.a = o.a;
} catch (ClassNotFoundException e)
{
speichern s = new speichern();
ArrayList<Lieferinhalte> auftraege = new ArrayList();
s.abspeichern(auftraege);
open o = new open();
this.a = o.a;
}
}
ArrayList<Lieferinhalte> getAuftraege(){
return a;
}
}
清单中应节省的物体类别:
a. 一揽子保护措施;
public class Lieferinhalte {
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;
}
}