Spring 如何使用JDBC从java获取多个数据
如何使用jdbc在javamaven-Spring中使用多个查询这里DB-coffice预定义的ans从DB中输出为'5',我需要其他字段数据,如名称、组、状态,在一次调用中位于同一个表上Spring 如何使用JDBC从java获取多个数据,spring,jdbc,Spring,Jdbc,如何使用jdbc在javamaven-Spring中使用多个查询这里DB-coffice预定义的ans从DB中输出为'5',我需要其他字段数据,如名称、组、状态,在一次调用中位于同一个表上 public String testMysqlCall() throws Exception { try { return gopuJdbcTemplate.query("select id from gopu limit 5", new IdMapp
public String testMysqlCall() throws Exception {
try {
return gopuJdbcTemplate.query("select id from gopu limit 5", new IdMapper());
} catch( Exception e) {
throw e;
}
}
private class IdMapper implements ResultSetExtractor<String> {
public String extractData(ResultSet resultSet) throws SQLException {
String toReturn=null;
while(resultSet.next()) {
toReturn = resultSet.getString("id");
}
return toReturn;
}
}
公共字符串testMysqlCall()引发异常{
试一试{
返回gopuJdbcTemplate.query(“从gopu limit 5中选择id”,new IdMapper());
}捕获(例外e){
投掷e;
}
}
私有类IdMapper实现ResultTextRactor{
公共字符串提取数据(ResultSet ResultSet)引发SQLException{
字符串toReturn=null;
while(resultSet.next()){
toReturn=resultSet.getString(“id”);
}
回归回归;
}
}
在代码中执行的SQL查询如下所示:
从gopu limit 5中选择id
因为它说“选择idfrom”,所以它只会在结果中返回id值
要返回多个列,请显式声明它们:
从gopu limit 5中选择id、名称、组、状态
或者使用通配符返回所有列:
从gopu limit 5中选择*
添加select id后出现此错误,名称来自gopu limit 5 org.springframework.jdbc.BadSqlGrammarException:StatementCallback;错误的SQL语法[选择id,名称gopu limit 5];嵌套异常为com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:字段列表中的未知列“id”是否确定SQL查询为
select id,name FROM gopu limit 5
?我这样问是因为异常消息中的查询没有提到“from”。如果不实际查看代码或数据库,则很难进行调试:)。你用asterix(*
)符号试过了吗?这两个查询asterix都是一样的,我认为获取数据需要将它传递给数组