If statement 尝试在netbeans中遇到麻烦
我正在尝试创建一个从我的SQL数据库获取信息的搜索引擎。现在我正在努力使combobox和textfield工作。到目前为止,我只能让代码的第一部分工作,它允许用户在数据库中搜索名称。然而,其余的根本不起作用,结果只是一个空窗口,信息应该在其中弹出 以下是代码中瑞典语单词的一些翻译: 名称 搜索 安斯塔尔德-雇员 援助-员工id 电话If statement 尝试在netbeans中遇到麻烦,if-statement,netbeans,hashmap,try-catch,If Statement,Netbeans,Hashmap,Try Catch,我正在尝试创建一个从我的SQL数据库获取信息的搜索引擎。现在我正在努力使combobox和textfield工作。到目前为止,我只能让代码的第一部分工作,它允许用户在数据库中搜索名称。然而,其余的根本不起作用,结果只是一个空窗口,信息应该在其中弹出 以下是代码中瑞典语单词的一些翻译: 名称 搜索 安斯塔尔德-雇员 援助-员工id 电话 try { if(jComboBoxSokAID.getSelectedItem().equals("Namn")) { String namn = j
try
{
if(jComboBoxSokAID.getSelectedItem().equals("Namn"))
{
String namn = jTextFieldSokText.getText();
String namnQuery = "select * from ANSTALLD where namn = '" + namn + "'";
try
{
HashMap <String, String> soktNamn = idb.fetchRow(namnQuery);
jTextAreaSpecialistInfo.setText("Namn: " + soktNamn.get("namn") + "\n" + "Aid: " + soktNamn.get ("aid") + "\n" + "Telefon: " + soktNamn.get ("telefon") + "\n" + "Mail: " + soktNamn.get ("mail"));
if(jComboBoxSokAID.getSelectedItem().equals("Mail"))
{
String mail = jTextFieldSokText.getText();
String mailQuery = "select * from ANSTALLD where mail = '" + mail + "'";
try
{
HashMap <String, String> soktMail = idb.fetchRow(mailQuery);
jTextAreaSpecialistInfo.setText("Namn: " + soktMail.get("namn") + "\n" + "Aid: " + soktMail.get ("aid") + "\n" + "Telefon: " + soktMail.get ("telefon") + "\n" + "Mail: " + soktMail.get ("mail"));
if(jComboBoxSokAID.getSelectedItem().equals("Telefon"))
{
String telefon = jTextFieldSokText.getText();
String telefonQuery = "select * from ANSTALLD where telefon = '" + telefon + "'";
try
{
HashMap <String, String> soktTelefon = idb.fetchRow(telefonQuery);
jTextAreaSpecialistInfo.setText("Namn: " + soktTelefon.get("namn") + "\n" + "Aid: " + soktTelefon.get ("aid") + "\n" + "Telefon: " + soktTelefon.get ("telefon") + "\n" + "Mail: " + soktTelefon.get ("mail"));
if(jComboBoxSokAID.getSelectedItem().equals("AID"))
{
String AID = jTextFieldSokText.getText();
String AIDQuery = "select * from ANSTALLD where aid = '" + AID + "'";
try
{
HashMap <String, String> soktAID = idb.fetchRow(AIDQuery);
jTextAreaSpecialistInfo.setText("Namn: " + soktAID.get("namn") + "\n" + "Aid: " + soktAID.get ("aid") + "\n" + "Telefon: " + soktAID.get ("telefon") + "\n" + "Mail: " + soktAID.get ("mail"));
}
catch (InformatikException e)
{
if(jComboBoxSokAID == null)
jTextAreaSpecialistInfo.setText("Sökningen gav inga resultat");
}
}
}
catch (InformatikException e)
{
}
}
}
catch (InformatikException e)
{
}
}
}
catch (InformatikException e)
{
}
试试看
{
if(jcomboxSokaid.getSelectedItem().equals(“Namn”))
{
字符串namn=jTextFieldSokText.getText();
String namnQuery=“select*from ANSTALLD,其中namn=”+namn+”;
尝试
{
HashMap soktNamn=idb.fetchRow(namnQuery);
jTextAreaSpecialistInfo.setText(“Namn:+soktNamn.get(“Namn”)+”\n“+”Aid:+soktNamn.get(“Aid”)+“\n”+”Telefon:+soktNamn.get(“Telefon”)+“\n”+”邮件:“+soktNamn.get(“邮件”);
if(jcomboxsokaid.getSelectedItem().equals(“邮件”))
{
String mail=jTextFieldSokText.getText();
String mailQuery=“从ANSTALLD中选择*,其中mail=”+mail+”;
尝试
{
HashMap soktMail=idb.fetchRow(mailQuery);
jTextAreaSpecialistInfo.setText(“Namn:+soktMail.get(“Namn”)+”\n“+”Aid:+soktMail.get(“Aid”)+”\n“+”Telefon:+soktMail.get(“Telefon”)+“\n”+”Mail:+soktMail.get(“Mail”);
if(jcomboxsokaid.getSelectedItem().equals(“Telefon”))
{
字符串telefon=jTextFieldSokText.getText();
String telefonQuery=“select*from ANSTALLD,其中telefon='”+telefon+“'”;
尝试
{
HashMap soktTelefon=idb.fetchRow(telefonQuery);
jTextAreaSpecialistInfo.setText(“Namn:+soktTelefon.get(“Namn”)+”\n“+”Aid:+soktTelefon.get(“Aid”)+”\n“+”Telefon:+soktTelefon.get(“Telefon”)+”\n“+”邮件:+soktTelefon.get(“邮件”);
if(jcomboxSokaid.getSelectedItem().equals(“AID”))
{
String-AID=jTextFieldSokText.getText();
字符串AIDQuery=“从ANSTALLD中选择*,其中aid=”+aid+”;
尝试
{
HashMap-soktAID=idb.fetchRow(AIDQuery);
jTextAreaSpecialistInfo.setText(“Namn:+soktAID.get(“Namn”)+”\n“+”Aid:+soktAID.get(“Aid”)+“\n”+”Telefon:+soktAID.get(“Telefon”)+”\n“+”Mail:+soktAID.get(“Mail”);
}
捕获(信息例外)
{
if(jcomboxsokaid==null)
jTextAreaSpecialistInfo.setText(“Sökningen gav inga resultat”);
}
}
}
捕获(信息例外)
{
}
}
}
捕获(信息例外)
{
}
}
}
捕获(信息例外)
{
}
不要这样写代码
永远不要有空的挡块
我更喜欢在一个方法中有一个try/catch,这种嵌套方式表明你应该重构一个做得太多的方法
您以最糟糕的方式将持久性和UI代码混合在一起。请将它们分开,以便您可以单独测试和使用它们
你不关闭任何数据库资源。这会让你很伤心。谢谢你,伙计!我正在考虑将搜索方法拆分为四个不同的按钮,这样我就不会把整个事情弄得如此混乱。我仍然会感谢其他人的更多评论!为什么你在代码示例中只使用Java时标记JavaScript?