bigint 的 NumberFormatting 异常
NumberFormatting exception for bigint
我将数据库用作 postgresql,使用 spring jdbctemplate 连接到数据库。
数据库中的 phone 列是 phone bigint
spring 正在抛出 java.lang.NumberFormatException
public UserDetails getUserDetails(int phone) {
String sql = "SELECT * FROM users where phone = ?";
UserDetails users = (UserDetails) jdbcTemplate.query(sql,new Object[]{phone},
new BeanPropertyRowMapper<UserDetails>(UserDetails.class));
return users;
}
**Error:-**
> For input string: "7894561230"; nested exception is
> java.lang.NumberFormatException: For input string: "7894561230"
我的 Bean 是 :-
public class UserDetails {
private int userId;
private String name;
private String email;
private String phone;
}
您的问题出在 int
。
在 Java 中 int
可以容纳从 -2147483648
到 2147483647
的任何整数,而您的值 7894561230
超出了它的范围。所以用 long
代替 int
.
我将数据库用作 postgresql,使用 spring jdbctemplate 连接到数据库。
数据库中的 phone 列是 phone bigint
spring 正在抛出 java.lang.NumberFormatException
public UserDetails getUserDetails(int phone) {
String sql = "SELECT * FROM users where phone = ?";
UserDetails users = (UserDetails) jdbcTemplate.query(sql,new Object[]{phone},
new BeanPropertyRowMapper<UserDetails>(UserDetails.class));
return users;
}
**Error:-**
> For input string: "7894561230"; nested exception is
> java.lang.NumberFormatException: For input string: "7894561230"
我的 Bean 是 :-
public class UserDetails {
private int userId;
private String name;
private String email;
private String phone;
}
您的问题出在 int
。
在 Java 中 int
可以容纳从 -2147483648
到 2147483647
的任何整数,而您的值 7894561230
超出了它的范围。所以用 long
代替 int
.