在JAVA应用程序中使用RFID阅读器

在JAVA应用程序中使用RFID阅读器,java,rfid,Java,Rfid,我需要您的帮助:我必须在java应用程序中使用RFID阅读器阅读卡片。 最后,当我点击“Attribuer numéro RFID”按钮时,它正在读取我的RFID阅读器(型号:OCS ACURW),因此,将十六进制值插入jtextfield文本区域。(首先,jTable获取数据库中每个用户的lastname和firstname。 这是我的项目代码。 如果有人知道当我点击“Attribuer numéro RFID”按钮时我如何阅读RFID阅读器,这将对我帮助很大! 谢谢!:) 这是我的申请代码

我需要您的帮助:我必须在java应用程序中使用RFID阅读器阅读卡片。 最后,当我点击“Attribuer numéro RFID”按钮时,它正在读取我的RFID阅读器(型号:OCS ACURW),因此,将十六进制值插入jtextfield文本区域。(首先,jTable获取数据库中每个用户的lastname和firstname。 这是我的项目代码。 如果有人知道当我点击“Attribuer numéro RFID”按钮时我如何阅读RFID阅读器,这将对我帮助很大! 谢谢!:)


这是我的申请代码:`

import java.sql.*;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;


//import com.sun.jdi.connect.spi.Connection;


/*
 * 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.
 */

/**
 *
 * @author BTS_SN
 */
public class IHM extends javax.swing.JFrame {

    /**
     * Creates new form IHM
     */
    int Li = -1;
    String UserSelected = "";
    String url = "jdbc:mysql://192.168.1.143:3306/projetdechetterie";
    String user = "Flavian";
        //String user = "root";
    String pwd = "";
    
    public IHM() {
        initComponents();
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {

        jPanel1 = new javax.swing.JPanel();
        jButton1 = new javax.swing.JButton();
        jPanel2 = new javax.swing.JPanel();
        jScrollPane1 = new javax.swing.JScrollPane();
        jTable1 = new javax.swing.JTable();
        jTextField1 = new javax.swing.JTextField();
        jButton2 = new javax.swing.JButton();
        jLabel1 = new javax.swing.JLabel();
        jButton3 = new javax.swing.JButton();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        jButton1.setText("Voir les utilisateurs en attente de création de carte");
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton1ActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
        jPanel2.setLayout(jPanel2Layout);
        jPanel2Layout.setHorizontalGroup(
            jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 391, Short.MAX_VALUE)
        );
        jPanel2Layout.setVerticalGroup(
            jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 100, Short.MAX_VALUE)
        );

        jTable1.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null},
                {null, null, null, null}
            },
            new String [] {
                "Title 1", "Title 2", "Title 3", "Title 4"
            }
        ));
        jTable1.setName(""); // NOI18N
        jTable1.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                jTable1MouseClicked(evt);
            }
        });
        jScrollPane1.setViewportView(jTable1);

        jTextField1.setText("123456");
        jTextField1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jTextField1ActionPerformed(evt);
            }
        });

        jButton2.setText("Attribuer numéro RFID");
        jButton2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton2ActionPerformed(evt);
            }
        });

        jButton3.setText("jButton3");
        jButton3.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton3ActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
        jPanel1.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jPanel1Layout.createSequentialGroup()
                        .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(jButton1)
                            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                                .addGroup(jPanel1Layout.createSequentialGroup()
                                    .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(jLabel1)
                                    .addGap(81, 81, 81)
                                    .addComponent(jButton2))
                                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 398, javax.swing.GroupLayout.PREFERRED_SIZE)))
                        .addGap(44, 44, 44)
                        .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addComponent(jButton3))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );
        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jPanel1Layout.createSequentialGroup()
                        .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addGap(323, 323, 323))
                    .addGroup(jPanel1Layout.createSequentialGroup()
                        .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 242, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(18, 18, 18)
                        .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jButton2)
                            .addComponent(jLabel1))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(jButton3)
                        .addGap(2, 2, 2)
                        .addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))
        );

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, 420, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(0, 0, Short.MAX_VALUE))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jPanel1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
        );

        pack();
    }// </editor-fold>                        

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        //String url = "jdbc:mysql://192.168.1.143:3306/projetdechetterie";
        
        try {
            // TODO add your handling code here:
            
            //Class.forName("com.mysql.jdbc.Driver");
            //System.out.println("chargement du pilote reussi");
            Connection connection = DriverManager.getConnection(url,user,pwd);
            Statement  executionReq = connection.createStatement();
            System.out.println("Connexion Ok");
            //Execution Requete
            String requete = "SELECT `Nom`,`Prenom` FROM `t_clients` WHERE `statutCarte`= '2'";
            //String res;
            System.out.println(requete);
            ResultSet resultat = executionReq.executeQuery(requete);
            System.out.println("Connexion Ok");
            //ResultSetMetaData metadata = (ResultSetMetaData) resultat.getMetaData();
            //int NbrChamps= metadata.getColumnCount();
            //System.out.println("Connexion Ok");
            
            //ResultSet tables = metadata.getTables(connection.getCatalog(),null,"t_clients",null);
            String[] entete = new String[1];
            entete[0] = "Utilisateur";
            //System.out.println("Connexion Ok");
            String[] ligne = new String[1];
            //System.out.println("Connexion Ok");
            DefaultTableModel md = new DefaultTableModel();
            //System.out.println("Connexion Ok");
            md.setColumnIdentifiers(entete);
            //int i=0;
            //System.out.println("Connexion Ok");
            while(resultat.next())
            {
                String nomUtilisateur = resultat.getString("Nom")+" "+resultat.getString("Prenom");
                ligne[0] = nomUtilisateur;
                md.addRow(ligne);
            }
            jTable1.setModel(md);
            //System.out.println("Connexion Ok");
            /*md.setColumnIdentifiers(entete);
            requete="SELECT * FROM `t_clients`";
            //System.out.println(requete);
            //System.out.println("Connexion Ok");
            resultat= executionReq.executeQuery(requete);
            System.out.println("Connexion Ok");
            if(resultat.next())
            {
                System.out.println("Ca MARCHHH");
            }
            resultat.beforeFirst();
            /*while(resultat.next())
            {
                for (int j=0;j<NbrChamps;j++) ligne[j]=resultat.getObject(j+1);
                md.addRow(ligne);
            }
            jTable1.setModel(md);*/
            //System.out.println("Connexion Ok");
            //String col[] = { "S1", "S2", "S3", "S4", "S5", "S6"};
            //res = resultat.getMetaData();
            //Conditions Execution Requete
            
            /*if (metadata.getTableName(1))
            {
            System.out.println("Ca marche !");
            }
            else
            {
            System.out.println("Ca marche pas !");
            }*/
        }
        catch (SQLException ex) {
            //Logger.getLogger(IHM.class.getName()).log(Level.SEVERE, null, ex);
             System.out.println("Erreur Connexion");
        } /*catch (ClassNotFoundException ex) {
            Logger.getLogger(IHM.class.getName()).log(Level.SEVERE, null, ex);
        }*/
        
        
    }                                        

    private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        // TODO add your handling code here:
        if (Li != -1)
        {
            if(jTextField1.getText() == "")
            {
                jLabel1.setText("Aucun numéro RFID spécifié");
            }
            else
            {
                try {
                    System.out.println("bon1");
                    String[] nUtilisateur = new String[2];
                    nUtilisateur = UserSelected.split(" ");
                    String nRFID = jTextField1.getText();
                    String reqAddRFID = "UPDATE `t_clients` SET `RFID`='"+nRFID+"' WHERE `Nom`='"+nUtilisateur[0]+"' AND `Prenom`='"+nUtilisateur[1]+"';";
                    //UPDATE `t_clients` SET `RFID`='"+nRFID+"' WHERE `Nom`='"+nUtilisateur[0]+"' AND `Prenom`='"+nUtilisateur[1]+"';
                    Connection connection = DriverManager.getConnection(url,user,pwd);
                    System.out.println("bon1.3");
                    Statement  executionReq = connection.createStatement();
                    System.out.println("bon1.6");
                    int resultat = executionReq.executeUpdate(reqAddRFID);
                    System.out.println("bon2");
                } catch (SQLException ex) {
                    Logger.getLogger(IHM.class.getName()).log(Level.SEVERE, null, ex);
                }
            }
        }
        else
        {
            jLabel1.setText("Pas D'utilisateur Séléctionné");
        }
    }                                        

    private void jTextField1ActionPerformed(java.awt.event.ActionEvent evt) {                                            
        // TODO add your handling code here:
    }                                           

    private void jTable1MouseClicked(java.awt.event.MouseEvent evt) {                                     
        // TODO add your handling code here:
        //jTextField1.setText("ghdyjg");
        JTable tableA = (JTable)evt.getSource();
        Li = tableA.getSelectedRow();
        UserSelected = (String)tableA.getValueAt(Li, 0);
        System.out.println(UserSelected);
        /*String liStr = String.valueOf(li);
        jTextField1.setText(liStr);*/
    }                                    

    private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        // TODO add your handling code here:
        
    }                                        

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /* Set the Nimbus look and feel */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
         * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(IHM.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(IHM.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(IHM.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(IHM.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>

        /* Create and display the form */
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new IHM().setVisible(true);
            }
        });
    }

    // Variables declaration - do not modify                     
    private javax.swing.JButton jButton1;
    private javax.swing.JButton jButton2;
    private javax.swing.JButton jButton3;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JPanel jPanel2;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JTable jTable1;
    private javax.swing.JTextField jTextField1;
    // End of variables declaration                   
}
import java.sql.*;
导入java.util.logging.Level;
导入java.util.logging.Logger;
导入javax.swing.JTable;
导入javax.swing.table.DefaultTableModel;
//导入com.sun.jdi.connect.spi.Connection;
/*
*要更改此许可证标题,请在“项目属性”中选择“许可证标题”。
*要更改此模板文件,请选择工具|模板
*然后在编辑器中打开模板。
*/
/**
*
*@author BTS\u SN
*/
公共类IHM扩展了javax.swing.JFrame{
/**
*创建新表单IHM
*/
int Li=-1;
字符串UserSelected=“”;
String url=“jdbc:mysql://192.168.1.143:3306/projetdechetterie";
字符串user=“Flavian”;
//字符串user=“root”;
字符串pwd=“”;
公共IHM(){
初始化组件();
}
/**
*从构造函数中调用此方法来初始化表单。
*警告:不要修改此代码。此方法的内容始终为
*由表单编辑器重新生成。
*/
@抑制警告(“未选中”)
//                           
私有组件(){
jPanel1=newjavax.swing.JPanel();
jButton1=newjavax.swing.JButton();
jPanel2=newjavax.swing.JPanel();
jScrollPane1=newjavax.swing.JScrollPane();
jTable1=newjavax.swing.JTable();
jTextField1=newjavax.swing.JTextField();
jButton2=newjavax.swing.JButton();
jLabel1=newjavax.swing.JLabel();
jButton3=newjavax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jButton1.setText(“参与点菜的用户选择”);
jButton1.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
jButton1ActionPerformed(evt);
}
});
javax.swing.GroupLayout jPanel2Layout=新的javax.swing.GroupLayout(jPanel2);
设置布局(jPanel2布局);
jPanel2Layout.setHorizontalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0,391,短.MAX_值)
);
jPanel2Layout.setVerticalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0,100,短。最大值)
);
jTable1.setModel(新的javax.swing.table.DefaultTableModel(
新对象[][]{
{null,null,null,null},
{null,null,null,null},
{null,null,null,null},
{null,null,null,null}
},
新字符串[]{
“标题1”、“标题2”、“标题3”、“标题4”
}
));
jTable1.setName(“”;//NOI18N
jTable1.addMouseListener(新java.awt.event.MouseAdapter(){
public void mouseClicked(java.awt.event.MouseEvent evt){
JTable1鼠标点击(evt);
}
});
jScrollPane1.setViewportView(jTable1);
jTextField1.setText(“123456”);
jTextField1.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
JTextfield1执行的操作(evt);
}
});
jButton2.setText(“attributer numéro RFID”);
jButton2.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
jButton2ActionPerformed(evt);
}
});
setText(“jButton3”);
jButton3.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
JButton3执行的操作(evt);
}
});
javax.swing.GroupLayout jPanel1Layout=新的javax.swing.GroupLayout(jPanel1);
setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jpanellayout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jpanellayout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.Training)
.addComponent(jButton1)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING,false)
.addGroup(jpanellayout.createSequentialGroup()
.addComponent(jTextField1,javax.swing.GroupLayout.PREFERRED\u SIZE,javax.swing.GroupLayout.DEFAULT\u SIZE,javax.swing.GroupLayout.PREFERRED\u SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,javax.swing.GroupLayout.DEFAULT\u SIZE,Short.MAX\u值)
.addComponent(jLabel1)
.addGap(81,81,81)
.addComponent(jButton2))
.addComponent(jScrollPane1,javax.swing.GroupLayout.PREFERRED_SIZE,398,javax.swing