java - “文本字段验证无法正常工作”
问题描述
验证部分的问题,没有关于空字段的消息显示。立即帮助
私人无效addbtnActionPerformed(java.awt.event.ActionEvent evt){
try{
Class.forName("com.mysql.cj.jdbc.Driver");
Connection con =DriverManager.getConnection("jdbc:mysql://localhost:3306/dbfinance","root","1234");
String sql="insert into util(type_,due_date,month_,amount,units,status_) values(?,?,?,?,?,?)";
PreparedStatement pstm =con.prepareStatement(sql);
pstm.setString(1,electype.getSelectedItem().toString());
pstm.setString(2,date.getText().toString());
pstm.setString(3,jComboBox1.getSelectedItem().toString());
pstm.setDouble(4,Double.parseDouble(amount.getText()));
pstm.setString(5,unit.getText());
pstm.setString(6,status.getText());
pstm.executeUpdate();
JOptionPane.showMessageDialog(null, "success");
con.close();
}catch(Exception e){
JOptionPane.showMessageDialog(null,e);
}
if(amount.getText().isEmpty()||unit.getText().isEmpty()||status.getText().isEmpty()){
JOptionPane.showMessageDialog(null,"please enter data");
// errorname2.setText("fill this field");
}
}
解决方案
在验证之前,您不应该将数据插入数据库。仅当数据不为空时才插入数据。至于检查数据是否为空,最好修剪文本以便修剪掉任何空格,因为空格表示某些值。
if(amount.getText().trim().isEmpty()||unit.getText().trim().isEmpty()||
status.getText().trim().isEmpty()){
JOptionPane.showMessageDialog(null,"please enter data");
// errorname2.setText("fill this field");
}
请确保将修剪后的数据插入到数据库中。
推荐阅读
- javascript - ReactJS.Net 在哪里启动 ASP 服务?
- git - 在本地删除特定的提交
- javascript - Typescript 重载类型 boolean 不能分配给 false 类型
- c - 接收数据时触发函数的套接字
- ios - 仅使用文本计算 UICollectionViewCell 的高度
- oracle - Oracle Forms Personalization 中的可视属性
- c++ - 使用 OpenCV 和 C++ 从 mp4 视频中提取所有视频帧
- sql - SQL:在注册过程中获取最后一个引用和发布引用页面
- r - :: NA/NaN 参数中的错误
- sql - 统计 SQL 中的所有值,如果没有任何计数则返回 0