Java 声纳干扰

Java 声纳干扰,java,sonarqube,sonarlint,Java,Sonarqube,Sonarlint,下面是声纳违反上述代码块如何修复 lambda应替换为方法引用 仅包含一条语句的lambda不应将此语句嵌套在块中 你真的不需要在这堵墙。您可以使用以下方法返回值: public Integer getMaxCount(String id,String type) { String maxCount ="SELECT MAX(ID) AS COUNT FROM STUDENT"; try { return queryForObject(

下面是声纳违反上述代码块如何修复

lambda应替换为方法引用

仅包含一条语句的lambda不应将此语句嵌套在块中


你真的不需要在这堵墙。您可以使用以下方法返回值:

public Integer getMaxCount(String id,String type) {
    String maxCount ="SELECT MAX(ID) AS COUNT FROM STUDENT";
    try {
        return queryForObject(
            maxCount, 
            new Object[]{id,type}, 
            (rs, i) -> {return rs.getInt(COUNT);},
            "maxCount"
        );
    } catch (EmptyResultDataAccessException ex) {
        LOG.error(ex);
        return 9999;
    }
}
这些是:

这两页都包含了关于如何修复代码的示例

(rs, i) -> rs.getInt(COUNT)
x -> System.out.println(x+1)
(a, b) -> a+b    //For return statement, the return keyword should also be dropped