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