Hallo zusammen,
da ich in Sachen Java eine ziemliche Niete bin hoffe ich , dass ihr mir bei meinem Problem helfen könnt. Ist denke ich auch keine große Sache, ich bekomme es aber einfach nicht hin.
Bin dabei ein einfaches Login-System zu entwerfen. Aus meiner "Main" werden dabei einfach ein Passwort & ein Benutzername jeweils über eine Text-Box eingelesen und an meine setUser Methode als String übergeben. Als Erstes erzeuge ich ein xml-File, das folgendermaßen aussieht:
[XML]
<?xml version="1.0" encoding="UTF-8" ?>
<user>
<person>
<name>user1</name>
<password>pass1</password>
<token>testToken</token>
</person>
<person>
<name>user2</name>
<password>pass2</password>
<token>testToken</token>
</person>
<person>
<name>user3</name>
<password>pass3</password>
<token>testToken</token>
</person>
</user>
[/XML]
das klappt auch alles ohne Probleme. Bei jeder neuen Anmeldung wird eine neue Person mit name/password/token angelegt.
hier noch der Java Code:
Mein erstes Problem ist, dass ich gerne vor der Zeile 25 (vor der Erzeugung neuer "xml-Elemente") eine if-Abfrage machen möchte, ob nicht bereits ein User mit dem gleichen Namen existiert. Es müssten also alle existierenden user auf den namen abgeglichen werden (<name>user1</name> usw).
Sollte das funktionieren, hab ich im Moment auch noch überhaupt keine Vorstellung darüber, wie ich anhand des XML-Files später jedem User das dazugehörige Passwort zuordnen kann???
Hoffe, dass ich mich einigermaßen verständlich ausgedrückt habe...
Gruß Frank
da ich in Sachen Java eine ziemliche Niete bin hoffe ich , dass ihr mir bei meinem Problem helfen könnt. Ist denke ich auch keine große Sache, ich bekomme es aber einfach nicht hin.
Bin dabei ein einfaches Login-System zu entwerfen. Aus meiner "Main" werden dabei einfach ein Passwort & ein Benutzername jeweils über eine Text-Box eingelesen und an meine setUser Methode als String übergeben. Als Erstes erzeuge ich ein xml-File, das folgendermaßen aussieht:
[XML]
<?xml version="1.0" encoding="UTF-8" ?>
<user>
<person>
<name>user1</name>
<password>pass1</password>
<token>testToken</token>
</person>
<person>
<name>user2</name>
<password>pass2</password>
<token>testToken</token>
</person>
<person>
<name>user3</name>
<password>pass3</password>
<token>testToken</token>
</person>
</user>
[/XML]
das klappt auch alles ohne Probleme. Bei jeder neuen Anmeldung wird eine neue Person mit name/password/token angelegt.
hier noch der Java Code:
Java:
package anmeldung;
import java.awt.List;
import java.io.FileOutputStream;
import java.io.IOException;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.Namespace;
import org.jdom.input.SAXBuilder;
import org.jdom.output.XMLOutputter;
import org.xml.sax.InputSource;
import org.jdom.xpath.*;
public class Users{
public void setUser(String benutzer, String passwort) throws JDOMException, IOException{
SAXBuilder sxbuild = new SAXBuilder();
InputSource is = new InputSource("C:/Test.xml");
Document doc = sxbuild.build(is);
Element root = doc.getRootElement();
root.addContent(new Element("person").addContent(
new Element("name").setText(benutzer)).addContent(
new Element("password").setText(passwort)).addContent(
new Element ("token").setText("testToken"))
);
XMLOutputter outputter = new XMLOutputter();
FileOutputStream output = new FileOutputStream("C:/Test.xml");
outputter.output(doc,output);
}
}
Mein erstes Problem ist, dass ich gerne vor der Zeile 25 (vor der Erzeugung neuer "xml-Elemente") eine if-Abfrage machen möchte, ob nicht bereits ein User mit dem gleichen Namen existiert. Es müssten also alle existierenden user auf den namen abgeglichen werden (<name>user1</name> usw).
Sollte das funktionieren, hab ich im Moment auch noch überhaupt keine Vorstellung darüber, wie ich anhand des XML-Files später jedem User das dazugehörige Passwort zuordnen kann???
Hoffe, dass ich mich einigermaßen verständlich ausgedrückt habe...
Gruß Frank