| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2045 人关注过本帖
标题:关于struts查询问题 有代码
只看楼主 加入收藏
lewis0323
Rank: 2
等 级:新手上路
威 望:3
帖 子:102
专家分:0
注 册:2006-7-20
收藏
 问题点数:0 回复次数:22 
关于struts查询问题 有代码

请大家帮我看看 我这个查询哪里不对 我对数据结构也不是很清楚 数据上出错了 运行时显示“将截断字符串或二进制数据”java.lang.ClassCastException

首先我在一个页面中提交了查询表单
<html:form action="/registredeemAction.do">
<center>
<table border="0">
<tr>
<td>请输入需补办暂住证人身份证号:</td>
<td><html:text property="idcard" /></td>
</tr>

<tr>
<td colspan="2" align="center"><html:submit value="查询"/><html:reset value="重添"></html:reset></td>
</tr>


</table>
</center>
</html:form>

然后在action

try{
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from T_A01 where idcard = "+"'"+idcard+"'";
rs=stmt.executeQuery(sql);
if(rs.next())
{
redeemDatabase.addElement(rs.getString("idcard"));
redeemDatabase.addElement(rs.getString("name"));
redeemDatabase.addElement(rs.getString("sex"));
redeemDatabase.addElement(rs.getString("folk"));
redeemDatabase.addElement(rs.getString("birthyear"));
redeemDatabase.addElement(rs.getString("birthmonth"));
redeemDatabase.addElement(rs.getString("birthday"));
redeemDatabase.addElement(rs.getString("marriage"));
redeemDatabase.addElement(rs.getString("occupation"));
redeemDatabase.addElement(rs.getString("relativephone"));
redeemDatabase.addElement(rs.getString("privence"));
redeemDatabase.addElement(rs.getString("resume"));
ok=true;
return(mapping.findForward("successredeem"));
}

(估计就是这里错了)

显示用自定义标签

try
{


Vector redeemVector=(Vector)session.getAttribute("redeemDatabase");

out.println("<table border=\"2\" cellspacing=\"0\" cellpadding=\"0\">");
out.println("<tr>");
out.println("<th BGCOLOR=\"#00FF00\"><b>身份证</b></th>");
out.println("<th BGCOLOR=\"#00FF00\"><b>姓名<b></th>");
out.println("<th BGCOLOR=\"#00FF00\"><b>性别</b></th>");
out.println("<th BGCOLOR=\"#00FF00\"><b>民族</b></th>");
out.println("<th BGCOLOR=\"#00FF00\"><b>出生日期</b></th>");
out.println("<th BGCOLOR=\"#00FF00\"><b>婚姻状况</b></th>");
out.println("<th BGCOLOR=\"#00FF00\"><b>职业</b></th>");
out.println("<th BGCOLOR=\"#00FF00\"><b>亲属联系方式</b></th>");
out.println("<th BGCOLOR=\"#00FF00\"><b>来自省份</b></th>");
out.println("<th BGCOLOR=\"#00FF00\"><b>简历</b></th>");
out.println("</tr>");

for(int i=0;i<redeemVector.size();i++)
{
redeemVector.elementAt(i);
out.println("<tr>");
out.println("<td>"+ redeemVector.get(0) + "</td>");
out.println("<td>"+ redeemVector.get(1) + "</td>");
out.println("<td>"+ redeemVector.get(2) + "</td>");
out.println("<td>"+ redeemVector.get(3) + "</td>");
out.println("<td>"+ redeemVector.get(4)+"-"+ redeemVector.get(5)+"-"+redeemVector.get(6)+ "</td>");
out.println("<td>"+ redeemVector.get(7) + "</td>");
out.println("<td>"+ redeemVector.get(8) + "</td>");
out.println("<td>"+ redeemVector.get(9) + "</td>");
out.println("<td>" +redeemVector.get(10) + "</td>");
out.println("<td>"+redeemVector.get(11)+"</td></tr>");
}

out.println("</table>");


}catch (Exception ex)
{
throw new JspTagException("IOException:" + ex.toString());
}


请问是哪里错了呢???有什么好方法可以更简单的实现数据查询后显示的呢???程序配置没有问题 就是查询或者输出数据库出错。请高手指教 再线等,等不到我不走了啊

搜索更多相关主题的帖子: struts 身份证 二进制 代码 
2006-11-21 14:53
lewis0323
Rank: 2
等 级:新手上路
威 望:3
帖 子:102
专家分:0
注 册:2006-7-20
收藏
得分:0 
知道的请帮帮我啊 真心感谢愿意帮助我的人长命百岁,万寿无疆,终生幸福,!!!!天天看美女,日日拣钱包
2006-11-21 15:04
angeloc
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:36
帖 子:1353
专家分:0
注 册:2006-11-21
收藏
得分:0 
不清楚你想要做什么,通常ACTION里是做逻辑处理,然后FINDFORWORD到页面去显示。
你的ACITION里面
if(rs.next())
{
redeemDatabase.addElement(rs.getString("idcard"));
redeemDatabase.addElement(rs.getString("name"));
redeemDatabase.addElement(rs.getString("sex"));
redeemDatabase.addElement(rs.getString("folk"));
redeemDatabase.addElement(rs.getString("birthyear"));
redeemDatabase.addElement(rs.getString("birthmonth"));
redeemDatabase.addElement(rs.getString("birthday"));
redeemDatabase.addElement(rs.getString("marriage"));
redeemDatabase.addElement(rs.getString("occupation"));
redeemDatabase.addElement(rs.getString("relativephone"));
redeemDatabase.addElement(rs.getString("privence"));
redeemDatabase.addElement(rs.getString("resume"));
ok=true;
return(mapping.findForward("successredeem"));
}
就是,如果数据库没返回数据的话,你的ACTION是没 RETURN FINDFORWARD的,可能有问题,不过具体不太清楚,你可以调试。

老牛明知夕阳晚,不用扬鞭自奋蹄; Angelo\'s BLOG
2006-11-21 15:12
lewis0323
Rank: 2
等 级:新手上路
威 望:3
帖 子:102
专家分:0
注 册:2006-7-20
收藏
得分:0 
但是我在struts中配置了数据源 在其他类中我不知道 如何得到这个数据源了
请问除了在action中用getDatasSource(request)得到数据源 在其他组件中如何得到数据源?
2006-11-21 16:53
lewis0323
Rank: 2
等 级:新手上路
威 望:3
帖 子:102
专家分:0
注 册:2006-7-20
收藏
得分:0 
谁能帮帮我啊 ???现在可以显示display数据了
但是显示不出查询结果
for(int i=0;i<redeemVector.size();i++)
{
redeemVector.elementAt(i);
out.println("<tr>");
out.println("<td>"+ redeemVector.get(0) + "</td>");
out.println("<td>"+ redeemVector.get(1) + "</td>");
out.println("<td>"+ redeemVector.get(2) + "</td>");
out.println("<td>"+ redeemVector.get(3) + "</td>");
out.println("<td>"+ redeemVector.get(4)+"-"+ redeemVector.get(5)+"-"+redeemVector.get(6)+ "</td>");
out.println("<td>"+ redeemVector.get(7) + "</td>");
out.println("<td>"+ redeemVector.get(8) + "</td>");
out.println("<td>"+ redeemVector.get(9) + "</td>");
out.println("<td>" +redeemVector.get(10) + "</td>");
out.println("<td>"+redeemVector.get(11)+"</td></tr>");
}

请问这种方法得到vector中的数据对吗??
2006-11-21 18:34
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
收藏
得分:0 
呵呵,自己不会尝试一下么~~~很简单的问题

淘宝杜琨
2006-11-21 19:50
lewis0323
Rank: 2
等 级:新手上路
威 望:3
帖 子:102
专家分:0
注 册:2006-7-20
收藏
得分:0 

谁能帮我解答下呀

2006-11-21 19:51
lewis0323
Rank: 2
等 级:新手上路
威 望:3
帖 子:102
专家分:0
注 册:2006-7-20
收藏
得分:0 

版主大哥 我常识了一天 用了各种容器 可是都显示不出查询结果
您发发慈悲 指点一下我吧

2006-11-21 19:52
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
收藏
得分:0 
element = redeemVector.elementAt(i);
点到为止了


淘宝杜琨
2006-11-21 19:55
lewis0323
Rank: 2
等 级:新手上路
威 望:3
帖 子:102
专家分:0
注 册:2006-7-20
收藏
得分:0 

我把输出改了

out.println("<tr>");
for(int i=0;i<redeemVector.size();i++)
{
out.println("<td>"+ redeemVector.elementAt(0)+ "</td>");
}

out.println("</tr>");


但是还是显示不出来啊 查询是没问题 我只有输入正确idcard才能进入页面 但是就是不显示
斑竹 我比较笨 您能不能多点下啊
拜托了~~

2006-11-21 20:11
快速回复:关于struts查询问题 有代码
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017385 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved