Package DataBaseX10

Source Code of DataBaseX10.DBX10

/*
* 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 DataBaseX10;

import DataX10.DataX10;
import java.sql.*;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
*
* @author zouloum
*/
public class DBX10 implements IDBX10 {
   
    /*
    String _sHostMySQl;
    Integer _iPortMySQL;
    String _sDB;
    Integer _iID;
    */
   
    Connection _cConnection = null;
   
    // Pour l'initalisation de l'objet DBX10
    // Charge le gestionnaire de base de donnée
    public DBX10()
    {
        // Chargement du gestionnaire spécifique
        try
        {
            Class.forName("com.mysql.jdbc.Driver").newInstance();
        }
        catch(ClassNotFoundException e)
        {    
            System.out.println(e.toString());
        }
        catch(Exception e)
        {
            System.out.println(e.toString());
        }
    }
   
   
    // Pour la connexion � la base de donn�es X10 sur votre serveur MySQL.
    // Cette fonction retourne vraie si la connexion c'est �tabli correctement.
    //
    // sHostMySQL : Adresse ou nom de l'ordinateur o� r�side le serveur MySQL
    // iPortMySQL : Port du serveur MySQL
    // sDB : Nom de la base de donn�es
    // iID : Identificateur pour la connexion
    // sPassword : Mot de passe pour la connexion
    public boolean connexion(String sHostMySQL, Integer iPortMySQL, String sDB, Integer iID, String sPassword)
    {
        String sLogin = Integer.toString(iID);       
        boolean isConnected;
       
        try
        {
       
            // Connexion à la base de donnée
            _cConnection = DriverManager.getConnection("jdbc:mysql://" + sHostMySQL + "/" + sDB, sLogin,
                    sPassword);

        }     
        catch(Exception e)
        {
              System.out.println(e.toString());
        }
       
        if(_cConnection == null)
        {
            isConnected = false;
        }
        else
        {
            isConnected = true;
        }

        return isConnected;
    }

        // Pour lire tous les enregistrements de l'une des tables de la base de donn�es X10
        // correspondant au num�ro d'utilisateur ID. Effectuez la lecture de tous les
        // enregistrements de la table demand�e.
        //
        // sTable : Nom de la table de la base de donn�es
        // iID : identifiant de l'utilisateur
        public ResultSet lireTous(String sTable, Integer iID)
        {
            ResultSet rs = null;
            try
            {
                // Lecture d'une table de la base de donnée
                Statement stmt = _cConnection.createStatement();
                rs = stmt.executeQuery("SELECT * FROM " + sTable +" WHERE ID = "+iID+ ";");
            }
            catch(SQLException e)
            {
                  System.out.println(e.toString() + ", code d'erreur : " + e.getErrorCode());
            }  
            catch(Exception e)
            {
                  System.out.println(e.toString());
            }


            return rs;
        }

        // Pour lire un objet DataX10 selon une date donn�e
        //
        // sTable : Nom de la table de la base de donn�es
        // iID : identifiant de l'utilisateur
        // sDate : Date d'insertion (format  JJMMAAAA HH:MM:SS GMT)
        public DataX10 lireDataX10(String sTable, Integer iID, String sDate)
        {
            DataX10 dx10 = new DataX10();
            ResultSet rs = null;
            try
            {
                // Lecture d'une table de la base de donnée
                Statement stmt = _cConnection.createStatement();
                rs = stmt.executeQuery("SELECT * FROM " + sTable
                        + " WHERE ID = "+ iID +
                        " and DATE(Date) = DATE(" + sDate + ");");
               
                // Place les données lues de la DB dans un objet DataX10
                while(rs.next())
                {
                    dx10.setUtilitaire(rs.getString("Utilitaire"));
                    dx10.setHouseCode(rs.getString("House_Code"));
                    dx10.setKeyCode(Integer.toString(rs.getInt("Key_Code")));
                    dx10.setCommandCode(rs.getString("Command_Code"));
                    dx10.setOptions(rs.getString("Options"));
                    dx10.setID(rs.getInt("ID"));
                    dx10.setMessage(rs.getString("Message"));
                }

            }
            catch(SQLException e)
            {
                  System.out.println(e.toString() + ", code d'erreur : " + e.getErrorCode());
            }  
            catch(Exception e)
            {
                  System.out.println(e.toString());
            }


            return dx10;
        }

        // Pour �crire un objet de type DataX10 dans la table voulue.
        //
        // sTable : Nom de la table de la base de donn�es
        // dx : Objet de type DATAX10 � sauvegarder
        public boolean ecrireDataX10(String sTable, DataX10 dx)
        {
            String sUtility = dx.getUtilitaire();
            String sHouseCode = dx.getHouseCode();
            String sKeyCode = dx.getKeyCode();
            String sCommandCode = dx.getCommandCode();
            String sOptions = dx.getOptions();
            String sID = Integer.toString(dx.getID());
            String sMessage = dx.getMessage();
            if(sKeyCode == "")
            {
                sKeyCode = "NULL";
            }
           
            try
            {
                Statement stmt = _cConnection.createStatement();
                // Formatte la commande à envoyer au serveur de base de donnée
                String sSQLCommand = "insert into " + sTable +
                        "(Date, Utilitaire, House_Code, Key_Code, Command_Code, "
                        + "Options, ID, Message) values("
                        + "NOW(), "
                        + "'" + sUtility + "'" + ", "
                        + "'" + sHouseCode + "'" + ", "
                        +       sKeyCode + ", "
                        + "'" + sCommandCode + "'" + ", "
                        + "'" + sOptions + "'" + ", "
                        +       sID + ", "
                        + "'" + sMessage + "'"
                        + ");";
                System.out.println(sSQLCommand);
                // Éxécute la commande
                stmt.executeUpdate(sSQLCommand);
            }
            catch(SQLException e)
            {
                  System.out.println(e.toString() + ", code d'erreur : " + e.getErrorCode());
            }  
            catch(Exception e)
            {
                  System.out.println(e.toString());
            }
           
            return true;
        }

        // Pour la fermeture de la base de donn�es X10. Cette fonction retourne
        // vraie si la connexion c'est ferm� correctement.
        public boolean fermeture()
        {
            boolean isClosed = false;
            try {
                // Ferme la connexion à la base de donnée
                _cConnection.close();
                isClosed = true;
            } catch (SQLException ex) {
                Logger.getLogger(DBX10.class.getName()).log(Level.SEVERE, null, ex);
                isClosed = false;
            }
            return isClosed;
        }
   
}
TOP

Related Classes of DataBaseX10.DBX10

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.