如何使用 QueryRunner 类从 mysql 数据库中删除记录?ids 作为字符串数组传递。您还可以建议使用 apache common db utils 进行 DML 操作是否有好处,有哪些替代方案或最佳实践?
下面是我的 StudentDAO.java 类的摘录。
public boolean deleteStudent(String [] ids) {
Connection connection = null;
String query;
boolean result = false;
try {
Context initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
DataSource ds = (DataSource) envCtx.lookup("jdbc/cmsDB");
connection = ds.getConnection();
QueryRunner run = new QueryRunner(ds);
query = "delete tbl_student where student_id";// what should i put here???
int nor = run.update(query, ids); //nor = no of records
if (nor > 0) {
result = true;
} else {
result = false;
}
} catch (NumberFormatException e) {
// e.getMessage();
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
} finally {
DbUtils.closeQuietly(connection);
}
return result;
}