Java 通过jList从数据库中删除对象
我正在用Netbeans构建一个javagui应用程序,用于表示数字收款系统(或epostill) 我需要能够通过jList查看用户列表,以及修改和删除他们。每个用户都是使用用户模型类构建的对象,表示mySQL accdb数据库上的一条记录 我已成功地将用户添加到数据库,并使用包含用户对象的ArrayList的内容填充jList,但我不知道如何从数据库中删除我在jList中选择的用户 以下是从数据库中删除用户的代码:Java 通过jList从数据库中删除对象,java,mysql,database,object,jlist,Java,Mysql,Database,Object,Jlist,我正在用Netbeans构建一个javagui应用程序,用于表示数字收款系统(或epostill) 我需要能够通过jList查看用户列表,以及修改和删除他们。每个用户都是使用用户模型类构建的对象,表示mySQL accdb数据库上的一条记录 我已成功地将用户添加到数据库,并使用包含用户对象的ArrayList的内容填充jList,但我不知道如何从数据库中删除我在jList中选择的用户 以下是从数据库中删除用户的代码: // removes users from the database pub
// removes users from the database
public void removeUser (User dbUser) {
try (Connection conn = setupConnection()) {
// create SQL statement
Statement stmt = conn.createStatement();
// SQL query in string variable
String sql = "DELETE FROM Users " +
"WHERE employee_number = " +
dbUser.getEmployeeNumber();
// execute query on database
stmt.executeUpdate(sql);
} catch (Exception ex) {
String message = ex.getMessage();
System.out.println("dbUser error: " + message);
}
}
我对此有点理解,但通过jList将特定用户作为目标并将其从数据库中删除是我无法理解的
为了清晰起见,除非有人要求,否则我不会发布添加用户和填充jList的代码
谢谢。我能用这个解决方案解决我的问题:
// validate that an item is selected
if (user_lst.isSelectionEmpty()) {
JOptionPane.showMessageDialog(null, "You haven't selected an account to remove from the list.");
} else {
// target object at list index
int index = user_lst.getSelectedIndex();
// remove object at list index
model.getElementAt(index);
// create instance of user based on selected index
User u = (User) model.getElementAt(index);
if (index < 0) {
System.out.println("jList error: There are no items");
} else {
db.removeUser(u);
model.remove(index);
}
// refresh list model
user_lst.setModel(model);
// confirm user was removed
JOptionPane.showMessageDialog(null, "Account removed");
}
//验证是否选择了某个项目
if(user_lst.isSelectionEmpty()){
showMessageDialog(null,“您尚未选择要从列表中删除的帐户”);
}否则{
//列表索引处的目标对象
int index=user_lst.getSelectedIndex();
//删除列表索引处的对象
model.getElementAt(索引);
//基于所选索引创建用户实例
用户u=(用户)model.getElementAt(索引);
如果(指数<0){
System.out.println(“jList错误:没有项目”);
}否则{
数据库删除用户(u);
模型。删除(索引);
}
//刷新列表模型
用户设置模型(模型);
//确认用户已被删除
showMessageDialog(null,“帐户已删除”);
}