jdbc数据库连接问题,在数据库中查有结果,但是jdbc中就是null.

数据库为sqlserver2005传入语句为Stringsql1="selecttitlefrombodywhereid=1";Listresult=DBUtitl.qu... 数据库为sql server 2005
传入语句为String sql1="select title from body where id=1";
List result=DBUtitl.queryForList(sql1, null);
还要其他部分代码的话请说。
可以追加分数。

//完整的类代码百度搜索DBUtitl就能看到
public static List queryForList(String sql,Object[] args){
Connection conn=null;
List list=new ArrayList();
try{
conn=getConnection();
PreparedStatement pstmt=conn.prepareStatement(sql);
if(args!=null){
for(int i=0;i<args.length;i++){
pstmt.setObject(i+1, args[i]);
}
}
ResultSet rs=pstmt.executeQuery();
ResultSetMetaData rsmd=rs.getMetaData();
int cols=rsmd.getColumnCount();
String[] colNames=new String[cols];
for(int i=0;i<cols;i++){
colNames[i]=rsmd.getColumnName(i+1);
}
while(rs.next()){
Map row=new HashMap();
for(int i=0;i<cols;i++){
row.put(colNames[i], rs.getObject(i+1));
}
list.add(row);
}
rs.close();
pstmt.close();

}catch(SQLException e){
e.printStackTrace();
}finally{
try{
if(conn!=null){
conn.close();
}
}catch(SQLException e){
e.printStackTrace();
}
}
return list;
}
问题是根本没报错,就是查询什么都是null。比如查title返回的就是title=null,List里面只有这一个元素。
展开
 我来答
happy2012zjh
2013-05-31 · TA获得超过273个赞
知道小有建树答主
回答量:1197
采纳率:100%
帮助的人:518万
展开全部
1、首先看看有没有报错
2、是否能正常连接到数据库
3、pstmt.executeQuery();这里面应该有你要查询的语句的,你没有啊。那不肯定是空的
追问
没报错,也可以正常连接到数据库,比如说那个select title from body where id=1执行之后会在result里面存入title=null这么一个元素,但是这个表里是有东西的,不是null啊。
如果他果
2018-10-27
知道答主
回答量:1
采纳率:0%
帮助的人:815
展开全部
用的oracle数据库的话,在数据库中看看是不是提交了事务。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
弓厶弓厶
推荐于2018-04-12 · 超过22用户采纳过TA的回答
知道答主
回答量:49
采纳率:100%
帮助的人:31.5万
展开全部
你调式过,使用rs.next()么?如果第一次调用都返回false那么就真是获取不到东西了。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式