驗證空白字段嘗試之前在數據庫中插入數據,以驗證空白字段時,我有問題。我目前使用Netbeans JavaFX應用程序,場景構建器和MySQL。JavaFX中
對於這種方法,它會通過內片組件到控制器類。
private void createProduct(ActionEvent event){
CreateProductController controller = new CreateProductController();
boolean result = controller.create(myPane);
if(result)
{
System.out.println("Success");
}
}
在我的控制器類裏面,我得到了一個validateDetails方法,它在insert和create方法之前檢查空白字段。
public boolean create(CreateProductUI panel){
String name = panel.getNameTextField().getText();
//And the rest of the components which I removed before it's very long
//I used if else statement to check
boolean invalid = true;
if(invalid){
validateDetails(name,desc,priceStr,qtyStr,dateStr,image,category);
return invalid;
}else{
invalid = false;
Product product1 = new Product(name,desc,price,quantity,dateStr,image,category);
product1.create();
return invalid;
}
}
這纔是我的validate方法:
public void validateDetails(String name,String desc,String priceStr,String qtyStr,String dateStr,Image image,int category){
if(name.equals("")){
JOptionPane.showMessageDialog(null,"Please enter name");
}else if(desc.equals("")){
JOptionPane.showMessageDialog(null,"Please enter description");
}else if(priceStr.equals("")){
JOptionPane.showMessageDialog(null,"Please enter price");
}else if(qtyStr.equals("")){
JOptionPane.showMessageDialog(null,"Please enter quantity");
}else if(category <= -1){
JOptionPane.showMessageDialog(null,"Please choose category");
}
}
然而,該方案並不時檢測到任何空白字段進行提示錯誤信息。例如,我將兩個字段留空。它應該提示兩次。相反,它只是添加到我的數據庫表。
在此先感謝。
儘管如此,它只檢查一個字段。如果多於一個空白字段,我會打錯誤。 –
因爲我使用if else語句,所以它只能逐個檢查。有沒有其他方法可以用於驗證? –
用更好的方法更新了答案。似乎你應該刷新你的核心Java技能。 – Mubin