1、实现类中的每一个方法涉及到的bean类,应该属于局部变量,在方法中定义,方法中使用,而不能将其升级为全局变量。不然在多次访问后会出现数据覆盖的错误。
例如:
// Dept dept = null;//不应该在此定义为全局变量
public Dept select_deptid(String dept_name) {
String sql = "select * from dbo.dept where dept_name=?";
PreparedStatement ps = null;
ResultSet rs = null;
Dept dept = null;//在此定义
try {
ps = con.prepareStatement(sql);
ps.setString(1, dept_name);
rs = ps.executeQuery();
if(rs.next()){
dept= new Dept(
rs.getInt(1),
rs.getString(2));
}
return dept;
} catch (SQLException e) {
e.printStackTrace();
} finally {
JdbcPool.release(rs, ps, con);
}
return null;
}

本文通过一个具体的Java示例说明了为什么在实现类的方法中,所使用的bean类应当作为局部变量来定义和使用,而非全局变量。这有助于避免在并发或多频次调用时可能出现的数据覆盖错误。
536

被折叠的 条评论
为什么被折叠?



