添加日志和异常处理

时间:2014-12-22 06:55:52

标签: java

我试图在这里处理代码并再次调用一个方法来添加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?

3 个答案:

答案 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以及帮助调试