我试图在这里处理代码并再次调用一个方法来添加DBkey并添加更多日志来打印确切的异常
boolean isEnabled(String dbKey) {
Connection conn = null;
boolean enabledFlag = false;
Hashtable params = null;
String sqlKey = "abc_a";
String paramKey = "cde_a";
try {
conn = JdoServer.getInstance(buildConfiguration.cDatabaseKey)
.getConnection();
String sql = JdoServer.getSqlStatement(sqlKey);
PreparedStatement ps = conn.prepareStatement(sql);
ps.setString(1, paramKey);
ResultSet rs = ps.executeQuery();
if (rs.next()) {
enabledFlag = rs.getBoolean(1);
}
rs.close();
ps.close();
} catch (SQLException se) {
Log.println(buildConfiguration.errorProjectName, "Database error",
se, Log.URGENT);
//Kiru 19/12/2014 Add log for Database key
catch (SQLException ab) {
Log.println( JdoServer.getInstance(buildConfiguration.cDatabaseKey,
ab, Log.URGENT);
请帮助我的异常处理是否正确以及如何记录dbkey?
答案 0 :(得分:0)
始终建议记录堆栈跟踪以进行调试:
在您的代码中,您只是记录一些消息,但这对调试没有帮助,因此最好记录堆栈跟踪。
log.error("Your description here", exception); // this is just an example
// change it according to you Log framework
答案 1 :(得分:0)
使用log4j等日志框架,它有级别。开发和生产等不同环境需要不同级别的日志记录。建议在错误级别打印堆栈跟踪。您还可以通过属性文件log4j.properties/log4j.xml来控制它。
了解更多here。
答案 2 :(得分:0)
使用具有适当日志级别的日志记录框架,在这种情况下,您可以使用调试级别,截至目前,还要记录异常,以了解发生了什么 我希望这应该有效
ab.printStackTrace();
尝试使用log Ids以及帮助调试