bonjour tous le monde ,j'ai ce programme qui permet d'etablir une connexion à la base de donnée excel,mais j'ai un problem ,il affiche les erreurs suivants:
D:\NetBeans_projects\excelpj\src\pfe\testing.java:74: cannot resolve symbol
symbol : class GroupLayout
location: package swing
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
D:\NetBeans_projects\excelpj\src\pfe\testing.java:74: cannot resolve symbol
symbol : class GroupLayout
location: package swing
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
D:\NetBeans_projects\excelpj\src\pfe\testing.java:80: cannot resolve symbol
symbol : class GroupLayout
location: package swing
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 372, javax.swing.GroupLayout.PREFERRED_SIZE)
D:\NetBeans_projects\excelpj\src\pfe\testing.java:80: cannot resolve symbol
symbol : class GroupLayout
location: package swing
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 372, javax.swing.GroupLayout.PREFERRED_SIZE)
D:\NetBeans_projects\excelpj\src\pfe\testing.java:77: package javax.swing.GroupLayout does not exist
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
D:\NetBeans_projects\excelpj\src\pfe\testing.java:87: cannot resolve symbol
symbol : class GroupLayout
location: package swing
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 104, javax.swing.GroupLayout.PREFERRED_SIZE)
D:\NetBeans_projects\excelpj\src\pfe\testing.java:87: cannot resolve symbol
symbol : class GroupLayout
location: package swing
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 104, javax.swing.GroupLayout.PREFERRED_SIZE)
D:\NetBeans_projects\excelpj\src\pfe\testing.java:84: package javax.swing.GroupLayout does not exist
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
le programme est le suivant:
package pfe;
import java.sql.*;
import java.util.*;
public class testing extends javax.swing.JFrame {
Object [][] table;
public testing()
{
initComponents();
Inscription objet=new Inscription();
objet.initialisation("sun.jdbc.odbc.JdbcOdbcDriver");
objet.authontification("javaXls","","");
Resultat res=objet.question("select * from [Feuil2$]");
imprimerEcran(res);
reservation();
}
public void imprimerEcran(Resultat res )
{
int taille=res.getCollection().size();
int k=0;
table=new Object[taille][3]; ////// changé le nombre des colonnes selon la feuille xls
if(res.getFlag())
{
Iterator i=res.getCollection().iterator();
while(i.hasNext())
{
Enregistrement enr=(Enregistrement) i.next();
for(int j=0;j<res.getNombreColonne();j++)
table[k][j]=enr.get(j).toString();
k++;
}
}
}
public void reservation()
{
jTable1.setModel(new javax.swing.table.DefaultTableModel(
table
,
new String [] {
"nom", "prenom", "age" // à changé selon le nomdes colonnes de la feuille xls
}
) {
Class[] types = new Class [] {
java.lang.String.class, java.lang.String.class, java.lang.String.class // a changé aussi
};
boolean[] canEdit = new boolean [] {
false, false, false // a changé aussi
};
public Class getColumnClass(int columnIndex) {
return types [columnIndex];
}
public boolean isCellEditable(int rowIndex, int columnIndex) {
return canEdit [columnIndex];
}
});
}
private void initComponents()
{
jScrollPane1 = new javax.swing.JScrollPane();
jTable1 = new javax.swing.JTable();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jScrollPane1.setViewportView(jTable1);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 372, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(18, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(78, 78, 78)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 104, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(118, Short.MAX_VALUE))
);
pack();
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new testing().setVisible(true);
}
});
}
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTable jTable1;
}
class Inscription
{
private Connection connection=null;
private Statement state=null;
static public void affiche(String phrase)
{
System.out.print(phrase);
}
public String initialisation(String pilote)
{
try
{
Class.forName(pilote);
return("pilote chargé avec succés\n");
}
catch(ClassNotFoundException e)
{
return("une erreur est survenue lors du chargement de pilote:\ndétaille:"+e.getMessage()+"\n");
}
}
public String authontification(String base,String user,String passWord)
{
try
{
connection=DriverManager.getConnection("jdbc:odbc:"+base,user,passWord);
return("connection à la base avec succés\n");
}
catch(SQLException e)
{
return("probléme lors d'authontification de l'utilisateur\ndétaille:"+e.getMessage()+"\n");
}
}
public String miseAJour(String requete)
{
try
{
if(state==null)
state=connection.createStatement();
int nb=state.executeUpdate(requete);
return("le nombre des lignes changés est :"+nb+"\n");
}
catch(SQLException e)
{
return("la requete n'est pas correcte\ndétaille:"+e.getMessage()+"\n");
}
}
public Resultat question(String requete)
{
try
{
if(state==null)
state=connection.createStatement();
ResultSet resultat=state.executeQuery(requete);
return(editerResultat(resultat));
}
catch(SQLException e)
{
Resultat resultat=new Resultat();
resultat.setFlag(false);
resultat.setErreur("la requete n'est pas correcte\ndétaille:"+e.getMessage()+"\n");
return(resultat);
}
}
public Resultat editerResultat(ResultSet resultat)
{
try
{
ResultSetMetaData rmd=resultat.getMetaData();
int i=rmd.getColumnCount();
Resultat resultatCorr=new Resultat(i);
for(int j=1;j<=i;j++)
resultatCorr.setChamp(rmd.getColumnName(j),j-1);
while(resultat.next())
{
Enregistrement enr=new Enregistrement(i);
for(int j=1;j<=i;j++)
enr.add(resultat.getObject(j),j-1);
resultatCorr.ajoutEnregistrement(enr);
}
return(resultatCorr);
}
catch(SQLException e)
{
Resultat resultatErr=new Resultat();
resultatErr.setFlag(false);
resultatErr.setErreur("la requete n'est pas correcte\ndétaille:"+e.getMessage()+"\n");
return(resultatErr);
}
}
}
class Resultat
{
private boolean flag=true;
private String erreur;
private int nombreColonne;
private String []champs;
private Collection collection;
public Resultat()
{}
public Resultat(int nombreChamps)
{
champs=new String[nombreColonne=nombreChamps];
collection=new ArrayList();
}
public void setFlag(boolean flag)
{
this.flag=flag;
}
public void setErreur(String erreur)
{
this.erreur=erreur;
}
public void setChamp(String champs,int index)
{
this.champs[index]=champs;
}
public void ajoutEnregistrement(Enregistrement record)
{
collection.add(record);
}
public int getNombreColonne()
{
return(nombreColonne);
}
public boolean getFlag()
{
return(flag);
}
public String getErreur()
{
return(erreur);
}
public Collection getCollection()
{
return(collection);
}
public String getChamps(int index)
{
return(champs[index]);
}
}
class Enregistrement
{
private Object []champs;
public Enregistrement(int taille)
{
champs=new Object[taille];
}
public void add(Object champs,int index)
{
this.champs[index]=champs;
}
public Object get(int index)
{
return(champs[index]);
}
}
merci pour votre aide