我正在做一个项目,我必须在名字和姓氏的组合上验证表格。
我没有编写自己的逻辑,而是在我的数据库中看到了一个模式,如果我给出了First和Last Name的重复组合,那么它会给我一个“General error at sun.jdbc.odbc.JdbcOdbc.createSQLException
”的一般错误控制台。
我想使用Logic本身,在我的DAO层中,尝试catch块,我想使用catch块将Object返回给我的服务和Controller,因此我必须添加一个警告,即组合错误或类似的东西。
任何人都可以帮我吗?
???
答案 0 :(得分:0)
在DAO层编写业务不是一个好主意,除非这是数据限制。我认为检查组合字符串应该写在UI或商业层中。
答案 1 :(得分:0)
据我所知,如果保存失败,您希望向前端发送警报..?
要实现所需的功能,您可以按如下方式修改代码:
public String saveEmployee(Employee employee) {
String result=null;
PreparedStatement pstmt=null;
try {
pstmt = getDataComnConnection().prepareStatement(saveEmployeeQuery);
pstmt.setString(1, employee.getFirstName());
pstmt.setString(2, employee.getLastName());
pstmt.setString(3, employee.getDisplayName());
pstmt.setString(4,employee.getAltId());
pstmt.setBoolean(5, employee.isActive());
pstmt.setInt(6, employee.getDeptId());
pstmt.setInt(7, employee.getTeamId());
pstmt.setString(8, "abc");
pstmt.setString(9, "def");
pstmt.execute();
pstmt.close();
getDataComnConnection().close();
result="Success";
}
catch (SQLException ex) {
// TODO: handle exception
result="Failure";
ex.printStackTrace();
}
return result;
根据我的建议,您必须编辑方法以返回结果字符串值。 您可以检查服务层中的值,如果找到失败,则将警报发送到应用层。
希望它有所帮助。
答案 2 :(得分:-1)
我认为你可以使用try和catch(Exception e)不要使用像IOException这样的特定异常。并将System.out.err(e.getMessage())放入catch