4
У меня проблема с Java Lambda Expressions. Я использую Spring 4, JdbcTemplate, Java 8. Intellij IDEA показывает «Циклический вывод». Что это такое и как это исправить? Спасибо за внимание.Java Lambda Циклический вывод
@Override
public User getUser(long id) {
return jdbcTemplate.query("SELECT * FROM user WHERE id = ?",
ps -> {
ps.setLong(1, id);
},
(rs, rowNum) -> {
return new User(rs.getInt(1), rs.getString(2), rs.getString(3), rs.getLong(4), rs.getBoolean(5));
});
}
решаемые Эта функция возвращает список, а не пользователя. И правильная функция заключается в следующем:
@Override
public User getUser(long id) {
return jdbcTemplate.query("SELECT * FROM user WHERE id = ?",
ps -> {
ps.setLong(1, id);
},
(rs, rowNum) -> {
return new User(rs.getInt(1), rs.getString(2), rs.getString(3), rs.getLong(4), rs.getBoolean(5));
}).get(0);
}
0 szenshot missing: D – zpontikas
Возможный дубликат [java 8 циклический вывод в моем случае] (http://stackoverflow.com/questions/26422166/java-8-cyclic-inference-in-my -case) –
Что такое IntelliJ версия у вас есть? – Vic