gpt4 book ai didi

java - java中值重复时清理对象

转载 作者:行者123 更新时间:2023-11-29 16:07:41 25 4
gpt4 key购买 nike

我正在向我的数据库添加数据,但我意识到了这一点;每次我尝试添加重复行时,我都会从控制台收到此消息:

e = >(com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException) com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Duplicate entry '13-2-1' for key 'idx_post_user'

问题是该对象仍然具有 html 表单中的值,因此当我尝试将该对象与 null 进行比较以选择我要采取的方式(发送到 a 或 b 屏幕)时,该对象仍然参数在内存中重复。

我的问题是:在异常发生后如何清理代码中的对象以使用 if 条件?

public boolean addElement(Object objetoInsert) {
ContactPost objContactPost = (ContactPost) objetoInsert;
try {
Connection con = Conexion.getConexion();
String query = "insert into snp_contactpost values
(?,?,?,?,?,?,?,?)";
PreparedStatement ps = con.prepareStatement(query);
ps.setInt(1, ultimoID());
ps.setInt(2, objContactPost.getPost_id());
ps.setInt(3, objContactPost.getContactPost_isDone());
ps.setString(4, objContactPost.getContactPost_token());
ps.setInt(5, objContactPost.getUser_id_seller());
ps.setInt(6, objContactPost.getUser_id_buyer());
ps.setInt(7, objContactPost.getContactPost_isEmailSended());
ps.setString(8, objContactPost.getContactPost_date());
try {
return ps.executeUpdate() == 1;
} catch (Exception e) {
System.out.println(e.getMessage());
return false;
}

} catch (Exception e) {
System.out.println(e.getMessage());
}
return false;
}

最佳答案

在嵌套尝试之前尝试使用 con.close(); 关闭连接。

关于java - java中值重复时清理对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55574476/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com