Bonjour,

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
 
package mongo;
 
/**
 *
 * @author help
 */
import java.awt.Component;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.sql.Array;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JFileChooser;
import org.json.simple.JSONObject;
public class json {
 
   public static void main(String[] args) throws InstantiationException, SQLException, IOException 
   {
      JSONObject obj = new JSONObject();
       try {
           Class.forName("com.mysql.jdbc.Driver").newInstance();
       } catch (IllegalAccessException ex) {
           Logger.getLogger(json.class.getName()).log(Level.SEVERE, null, ex);
       } catch (ClassNotFoundException ex) {
           Logger.getLogger(json.class.getName()).log(Level.SEVERE, null, ex);
       }
	              Connection connect = DriverManager.getConnection("jdbc:mysql://localhost:3306/reseau_social","root","root"); 
		      System.out.println("->Connecting to a selected database...");
		      Statement stmt = connect.createStatement();
/*************************************commune*************************************************/		    
                       ResultSet rs1 = stmt.executeQuery( "select id_user,u.nom, u.prenom, u.email, u.mot_de_pass,u.id_commune from user as u " ) ;
	               ResultSetMetaData resultMeta = rs1.getMetaData();
 
         /*              
       JFileChooser fileChooser = new JFileChooser();
       fileChooser.setDialogTitle("Specify a file to save");    
       Component parentFrame = null;
 
int userSelection = fileChooser.showSaveDialog(parentFrame);
 
if (userSelection == JFileChooser.APPROVE_OPTION) {
                            File fileToSave = fileChooser.getSelectedFile();
                            System.out.println("Save as file: " + fileToSave.getAbsolutePath());
 
    */
  File file =new File ("C:\\Users\\help\\Desktop\\user.json") ;
                            file.createNewFile();
                            FileWriter writer =new FileWriter(file);
      while(rs1.next())
    { 
     // for(int i = 1; i <=  resultMeta.getColumnCount(); i++){
     // System.out.println("le"+rs1.getObject(2).toString());  
        obj.put("id_user", rs1.getObject(1).toString()) ;
        obj.put("nom", rs1.getObject(2).toString());
        obj.put("prenom", rs1.getObject(3).toString()) ;
        obj.put("email", rs1.getObject(4).toString());
         obj.put("mot_de_pass", rs1.getObject(5).toString()) ;
        obj.put("id_commune", rs1.getObject(6).toString());
          //System.out.println(obj);
        Object jsoncontent = obj;
        System.out.println("le"+jsoncontent);
        writer.write(jsoncontent.toString()+"\n");
        writer.flush();
               // writer.close();
    }  rs1.close();    
 
   /**************************************************adress*****************************************/
    JSONObject obj1 = new JSONObject();
    ResultSet rs2 = stmt.executeQuery( "select * from adress " ) ;
    ResultSetMetaData	  resultMeta2 = rs2.getMetaData();
    File file1 =new File ("C:\\Users\\help\\Desktop\\adress.json") ;
    file.createNewFile();
    FileWriter writer1 =new FileWriter(file1);
    while(rs2.next())
    { 
        obj1.put("id_adress", rs2.getObject(1).toString()) ;   // for(int i = 1; i <=  resultMeta.getColumnCount(); i++){
        obj1.put("nom_adress", rs2.getObject(2).toString());
        Object jsoncontent1 = obj1;
        System.out.println("le"+jsoncontent1);
        writer1.write(jsoncontent1.toString()+"\n");
        writer1.flush();
        }  rs2.close();                                       // writer.close();
 
 
 
 /*************************************commune****************************************************************/                      
      JSONObject obj3 = new JSONObject();
    ResultSet rs3 = stmt.executeQuery( "select * from commune " ) ;
    ResultSetMetaData	  resultMeta3 = rs3.getMetaData();
    File file3 =new File ("C:\\Users\\help\\Desktop\\commune.json") ;
    file3.createNewFile();
    FileWriter writer3 =new FileWriter(file3);
    while(rs3.next())
    { 
        obj3.put("id_commune", rs3.getObject(1).toString()) ;   // for(int i = 1; i <=  resultMeta.getColumnCount(); i++){
        obj3.put("nom_commune", rs3.getObject(2).toString());
         obj3.put("id_adress", rs3.getObject(3).toString());
        Object jsoncontent3 = obj3;
        System.out.println("le"+jsoncontent3);
        writer3.write(jsoncontent3.toString()+"\n");
        writer3.flush();
        }  rs3.close();                                       // writer.close();
 
 
 
 
 
 
 
   }}
ce scripts permet de recupérer les données de mes tables de la base de données et l'enregistre dans un fichier json . mais mon probleme c'est que ma base de donnée contients plus de 20 tables .donc j'arrive pas à générer des fichiers automatiquement sans creer l'un apres l'autre