私の Swing アプリケーションは例外をほとんどスローしません。Integrity Constraint Violation Exception をキャッチして、「Duplicate ID」というメッセージを表示しようとしました。しかし、それが起こった場合、ここでそれをキャッチせずに: catch(MySQLIntegrityConstraintViolationException ex) それは catch (SQLException ex) に行きます。私がやりたいことは、完全性違反の例外をキャッチし、ex.getMessage() からの技術的なメッセージの代わりにユーザーフレンドリーなメッセージを表示することです。どうすればいいですか?
ShippmentTransfer shipTrns = new ShippmentTransfer(shipID, GIN, issueDate, ToStore, itemName, Qty, Driver, Vehicle);
int res = ShipmentTansController.addShipGIN(shipTrns);
if (res > 0) {
JOptionPane.showMessageDialog(null, "Record Added");
resetAll();
}
} catch (DataIntegrityViolationException ex) {
JOptionPane.showMessageDialog(null, "Duplicate ID");
} catch (ClassNotFoundException ex) {
JOptionPane.showMessageDialog(null, ex.getMessage());
}
catch (SQLException ex) {
JOptionPane.showMessageDialog(null, ex.gets);
}
}