我只需要获取一个Float
数据类型值。在PostgreSQL数据库中,此字段的类型为real
。我将不胜感激)
`public Float getPlayerRatingValue(Integer idClub, Integer idPlayer) {
MapSqlParameterSource parameters = new MapSqlParameterSource();
parameters.addValue("idClub", idClub);
parameters.addValue("idPlayer", idPlayer);
parameters.addValue("zeroRating", ZERO_RATING);
return namedParameterJdbcTemplate
.queryForObject(
"SELECT rating_value " +
"FROM rating " +
"WHERE id_club = :idClub AND id_player = :idPlayer",
parameters,
new BeanPropertyRowMapper<>(Float.class)
);`
NamedParameterJdbcTemplate
对于单行/列查询具有特殊的method。
因此您可以仅将Float.class
作为第三个参数:
return namedParameterJdbcTemplate
.queryForObject(
"SELECT rating_value " +
"FROM rating " +
"WHERE id_club = :idClub AND id_player = :idPlayer",
parameters,
Float.class
);
另一个快速示例:
MapSqlParameterSource parameterSource = new MapSqlParameterSource();
Float f = jdbcTemplate.queryForObject("SELECT CAST(1 AS REAL)", parameterSource, Float.class);
System.out.println(f);