Créer un fichier XML comme base de donnees avec JAVA
Résolu
AFATIHAA
Messages postés
29
Date d'inscription
Statut
Membre
Dernière intervention
-
karima -
karima -
Bonjour,
j'ai un formulaire et je veux que chauque donnee que je saisie doit etre ajouter dans mon fichier xml,
//formulaire .html
//servlet
je veux a chaque fois que j ajoute une information il va l ajouter mais moi nn
et moi je veux comme ca
j'ai un formulaire et je veux que chauque donnee que je saisie doit etre ajouter dans mon fichier xml,
//formulaire .html
<form action="Servlet_Student" method="post"> <table border="2"> <tr> <td>Nom</td> <td> <input type=text name="nom_s"> </td> </tr> <tr> <td>Prenom</td> <td><input type=text name="prenom_s"></td> </tr> <tr> <td>Semestre</td> <td><input type=text name="semestre_s"></td> </tr> <tr> <td colspan="2"><input type=submit value="send"></td> </tr> </table> </form>
//servlet
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { Element racine = new Element("Etudiants"); Document document = new Document(racine); Element etudiant = new Element("Etudiant"); Element nom = new Element("Nom"); Element prenom= new Element("Prenom"); Element semestre= new Element("Semestre"); nom.setText(request.getParameter("nom_s")); prenom.setText(request.getParameter("prenom_s")); semestre.setText(request.getParameter("semestre_s")); etudiant.addContent(nom); etudiant.addContent(prenom); etudiant.addContent(semestre); racine.addContent(etudiant); PrintWriter pw=response.getWriter(); pw.println("fini"); try { XMLOutputter sortie = new XMLOutputter(Format.getPrettyFormat()); FileOutputStream fich = new FileOutputStream("D:/Students.xml"); sortie.output(document, fich); fich.flush(); fich.close(); } catch (java.io.IOException e){ e.printStackTrace(); } }
je veux a chaque fois que j ajoute une information il va l ajouter mais moi nn
<?xml version="1.0" encoding="UTF-8"?> <Etudiants> <Etudiant> <Nom>lamya</Nom> <Prenom>sousou</Prenom> <Semestre>1</Semestre> </Etudiant> </Etudiants>
et moi je veux comme ca
<?xml version="1.0" encoding="UTF-8"?> <Etudiants> <Etudiant> <Nom>hgj</Nom> <Prenom>hjhg</Prenom> <Semestre>jgh</Semestre> </Etudiant> <Etudiant> <Nom>Fatiha</Nom> <Prenom>lakman</Prenom> <Semestre>2</Semestre> </Etudiant> <Etudiant> <Nom>llll</Nom> <Prenom>ppp</Prenom> <Semestre>3</Semestre> </Etudiant> . . .. </Etudiants>
A voir également:
- Créer un fichier XML comme base de donnees avec JAVA
- Fichier bin - Guide
- Waptrick java football - Télécharger - Jeux vidéo
- Creer un fichier .bat - Guide
- Jeux java itel - Télécharger - Jeux vidéo
- Créer un compte google - Guide
2 réponses
Bonjour,
Si dans ton Document tu veux une liste d'étudiants il faut faire autant de
Si dans ton Document tu veux une liste d'étudiants il faut faire autant de
racine.addContent(etudiant);que d'étudiants que tu as ton fichier. Mettre l'étudiant que tu ajoutes, mais aussi tout ceux qui étaient déjà dans le fichier, par exemple en utilisant le même objet
racinepour toutes tes requêtes.
j' ai pas compris est ce que Element et document sont des classe donnee a moi les 2 classes pour bien comprendre et merci
Bonjour,
Oui ce sont des classes, voir dans la documentation :
https://docs.oracle.com/javase/8/docs/api/index.html?org/w3c/dom/package-summary.html
Oui ce sont des classes, voir dans la documentation :
https://docs.oracle.com/javase/8/docs/api/index.html?org/w3c/dom/package-summary.html
public class AjoutEtud extends HttpServlet {
private Element racine;
@Override
public
void init(ServletConfig config) {
racine = new Element("Etudiants"); // lire le fichier existant ?
}
public org.jdom2.Document document;
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setCharacterEncoding( "UTF-8" );
request.setCharacterEncoding("utf-8");
Document document = new Document(racine);
Element etudiant = new Element("Etudiant");
Element nom = new Element("Nom");
Element prenom= new Element("Prenom");
Element cne= new Element("cne");
cne.setText(request.getParameter("cne"));
nom.setText(request.getParameter("nom"));
prenom.setText(request.getParameter("prenom"));
etudiant.addContent(nom);
etudiant.addContent(prenom);
etudiant.addContent(cne);
while(racine.addContent(etudiant)!=null){
PrintWriter pw=response.getWriter();
pw.println("fini");
XMLOutputter sortie = new XMLOutputter(Format.getPrettyFormat());
FileOutputStream fich = new FileOutputStream("/home/user/workspace/NoteM2i/Students.xml");
sortie.output(document, fich);
pw.println("l'etudiant bien Ajouter (-_-)");
fich.flush();
fich.close();}
}
}