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

打错了 是redeemVector.elementAt(i)

2006-11-21 20:15
lewis0323
Rank: 2
等 级:新手上路
威 望:3
帖 子:102
专家分:0
注 册:2006-7-20
收藏
得分:0 
有谁和我遇到一样的问题吗?????如果已经解决了请帮帮我啊
2006-11-21 20:43
lewis0323
Rank: 2
等 级:新手上路
威 望:3
帖 子:102
专家分:0
注 册:2006-7-20
收藏
得分:0 

没有显示出问题 但是就是不输出查询结果
我就是想确认下 vector的用法是否正确

package floatingpopulation.tags;

import java.util.Vector;

import javax.servlet.http.HttpSession;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspTagException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.TagSupport;

public final class DisplayRedeemTag extends TagSupport{
public int doEndTag() throws JspException
{
JspWriter out = pageContext.getOut();
HttpSession session = pageContext.getSession();
try
{


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

out.println("<table>");
out.println("<tr>");
out.println("<td><b>身份证</b></td>");
out.println("<td><b>姓名<b></td>");
out.println("<td><b>性别</b></td>");
out.println("<td><b>民族</b></th>");
out.println("<td><b>出生日期</b></th>");
out.println("<td><b>婚姻状况</b></th>");
out.println("<td><b>职业</b></th>");
out.println("<td><b>亲属联系方式</b></tddd>");
out.println("<td><b>来自省份</b></td>");
out.println("<td><b>简历</b></td>");
out.println("</tr>");
out.println("<tr>");

for(int i=0;i<redeemVector.size();i++)

{
out.println("<td>"+ redeemVector.elementAt(i)+ "</td>");
}


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


}catch (Exception ex)
{

}
return super.doEndTag();
}

}

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



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

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