当前位置:编程学习 > JAVA >>

从数据库获取的数值,为什么传到Struts的Action里面就变了呢

jsp文件<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP 'SelectTemporary.jsp' starting page</title>

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
<script type="text/javascript">
function onCheck() {
var a;
a = document.getElementById("usertelephone").value;

var pattern = /^1\d{0,10}$/;
if (!pattern.test(a)) {
document.getElementById("usertelephone_msg").innerHTML = "__tag_32$60_请输入以1开头的11位电话号码,谢谢~!__tag_32$98_";
} else {
document.forms[0].action = "TemporaryAction_selAll";
document.forms[0].method = "post";
document.forms[0].submit();
}
}
</script>

</head>

<body bgcolor="#3399FF">
<form>
电话:
<input type="text" name="temporary.ttelephone" id="usertelephone"
onblur="checkusert();" value="${ttelephone }"/>

<input type="button" value="搜索" style="width: 100px; height: 30px;"
onclick="onCheck();"/>
<br>
<span id="usertelephone_msg"></span>
<font color="red">${selTem_0_msg}</font>
<s:if test="list!=null && list.size()>0">
<input type="hidden" name="nowpage" value="1" />
<table width="1100" cellpadding="5" cellspacing="0" align="center"
border="1" bordercolor="white">
<tr>
<th width="60px;">
姓名
</th>
<th width="30px;">
性别
</th>
<th width="100px;">
电话
</th>
<th width="100px;">
身份证号
</th>
<th width="150px;">
每周空闲时间
</th>
<th width="190px;">
当前执行项目编号
</th>
<th width="190px;">
当前执行项目名称
</th>
</tr>
<s:iterator var="l" value="list">
<tr>

<th>
<a onclick="onShow(${l.tidcard });"><font
color="black">${l.tname }</font> </a>
</th>
<th>
${l.tsex }
</th>
<th>
${l.ttelephone }
</th>
<th>
${l.tidcard }
</th>
<th>
${l.tftime }
</th>
<th>
${l.tncpid }
</th>
<th>
${l.tncpname }
</th>
</tr>
</s:iterator>
</table>

<p align="center">

<s:if test="%{nowpage>1}">
<a href="javascript:f_page(<s:property value="nowpage"/> - 1)"
id="spage"> 上一页 </a>
</s:if>
<s:if test="%{nowpage<=1}"> 上一页  </s:if>

当前页:
<s:property value="nowpage" />
总页数:
<s:property value="allpage" />

<s:if test="%{nowpage>=allpage}">下一页</s:if>
<s:if test="%{nowpage<allpage}">
<a href="javascript:f_page(<s:property value="nowpage"/> + 1)">
下一页</a>
</s:if>
</p>
</s:if>
</form>
</body>
<script type="text/javascript">
function f_page(obj) {
with (document.forms[0]) {
nowpage.value = obj;
action = "TemporaryAction_selAll";
submit();
}
}
function onShow(tidcard){
document.forms[0].action="TemporaryAction_onShow?temporary.tidcard="+tidcard;
document.forms[0].method="post";
document.forms[0].submit();
}
</script>
</html>
action文件
public String onShow(){
String tidcard= temporary.getTidcard();
System.out.println("-------------------Action tidcard="+tidcard);
TemporaryDao td=new TemporaryDao();
temporary = td.onShow(tidcard);
return "onshow";
}
JavaDao文件
public Temporary onShow(String tidcard) {
Temporary temporary = new Temporary();
conn = DBUtil.getConnection();
String sql = "select * from temporary where tidcard=?";
System.out.println("----------------------JavaDao ---"+tidcard);
try {
ps = conn.prepareStatement(sql);
ps.setString(1, tidcard);
rs = ps.executeQuery();
if (rs.next()) {
temporary = new Temporary(rs.getDate("tetime"), rs
.getString("tpproperty"), rs
.getString("trespectivespheres"), rs
.getString("tmajorjobs"), rs.getString("tid"), rs
.getString("tlevel"), rs.getString("tftime"), rs
.getString("tname"), rs.getString("ttelephone"), rs
.getString("tidcard"), rs.getString("tbankcard"), rs
.getString("tphoto"), rs.getString("tbank"), rs
.getString("tsex"), rs.getString("thouseholdregister"),
rs.getString("tstatus"), rs.getString("tncpname"), rs
.getString("tncpid"), rs.getString("tgread"),
rs.getString("taddress"), rs.getString("tmajor"), rs
.getString("tdriverlicense"), rs
.getString("tcomputeroperating"), rs
.getString("tcamear"),
rs.getString("toutflow"), rs.getString("tblacklist"),
rs.getString("tos")) ;
}else {
temporary=null;
}
} catch (Exception e) {
e.printStackTrace();
} finally{
DBUtil.closeAll(conn, ps, rs);
}
return temporary;
}
javaBean文件
package com.sn.bean;

import java.sql.Date;

public class Temporary {


private String tbankcard; 
public String getTidcard() {
return tidcard;
}
public void setTidcard(String tidcard) {
this.tidcard = tidcard;
}
public Temporary(Date tetime, String tpproperty, String trespectivespheres,
String tmajorjobs, String tid, String tlevel, String tftime,
String tname, String ttelephone, String tidcard, String tbankcard,
String tphoto, String tbank, String tsex,
String thouseholdregister, String tstatus, String tncpname,
String tncpid, String tgread, String taddress, String tmajor,
String tdriverlicense, String tcomputeroperating, String tcamear,
String toutflow, String tblacklist, String tos) {
super();
this.tetime = tetime;
this.tpproperty = tpproperty;
this.trespectivespheres = trespectivespheres;
this.tmajorjobs = tmajorjobs;
this.tid = tid;
this.tlevel = tlevel;
this.tftime = tftime;
this.tname = tname;
this.ttelephone = ttelephone;
this.tidcard = tidcard;
this.tbankcard = tbankcard;
this.tphoto = tphoto;
this.tbank = tbank;
this.tsex = tsex;
this.thouseholdregister = thouseholdregister;
this.tstatus = tstatus;
this.tncpname = tncpname;
this.tncpid = tncpid;
this.tgread = tgread;
this.taddress = taddress;
this.tmajor = tmajor;
this.tdriverlicense = tdriverlicense;
this.tcomputeroperating = tcomputeroperating;
this.tcamear = tcamear;
this.toutflow = toutflow;
this.tblacklist = tblacklist;
this.tos = tos;
}
public Temporary() {
super();
// TODO Auto-generated constructor stub
}
@Override
public String toString() {
return "Temporary [taddress=" + taddress + ", tbank=" + tbank
+ ", tbankcard=" + tbankcard + ", tblacklist=" + tblacklist
+ ", tcamear=" + tcamear + ", tcomputeroperating="
+ tcomputeroperating + ", tdriverlicense=" + tdriverlicense
+ ", tetime=" + tetime + ", tftime=" + tftime + ", tgread="
+ tgread + ", thouseholdregister=" + thouseholdregister
+ ", tid=" + tid + ", tidcard=" + tidcard + ", tlevel="
+ tlevel + ", tmajor=" + tmajor + ", tmajorjobs=" + tmajorjobs
+ ", tname=" + tname + ", tncpid=" + tncpid + ", tncpname="
+ tncpname + ", tos=" + tos + ", toutflow=" + toutflow
+ ", tphoto=" + tphoto + ", tpproperty=" + tpproperty
+ ", trespectivespheres=" + trespectivespheres + ", tsex="
+ tsex + ", tstatus=" + tstatus + ", ttelephone=" + ttelephone
+ "]";
}

}
问题是这样的,我从数据库获取的身份证号码是612724198810290611,但是不知道为什么,在Action和JavaDao文件的输出里面就变成了612724198810290600,也就是不论是什么,结尾都变成了00,是我设置的有问题还是怎么回事,怎么会自动的变呢 action struts 数据库 --------------------编程问答-------------------- 在获取数据的时候、输出一下rs.getString("tidcard")看看!!!
另外你数据库这个字段是什么类型啊? --------------------编程问答-------------------- 你的数据库中,身份证这一列是什么类型,我判断是“612724198810290611”这个值超出了那一列类型的长度范围。 --------------------编程问答--------------------
引用 2 楼 yanan_seachange 的回复:
你的数据库中,身份证这一列是什么类型,我判断是“612724198810290611”这个值超出了那一列类型的长度范围。
varchar2(30) --------------------编程问答--------------------
怎么会能,你现在搞定没,?? --------------------编程问答--------------------
引用 1 楼 hzw2312 的回复:
在获取数据的时候、输出一下rs.getString("tidcard")看看!!!
另外你数据库这个字段是什么类型啊?
我想问一下,rs.getString("tidcard")应该写在那个位置,为什么我写的几个位置不是报错,就是不输出呢 --------------------编程问答--------------------
引用 4 楼 yfxvector 的回复:
怎么会能,你现在搞定没,??
没有搞定,现在还在纠结中
--------------------编程问答--------------------
引用 5 楼 tianchangdijiuyi 的回复:
引用 1 楼 hzw2312 的回复:在获取数据的时候、输出一下rs.getString("tidcard")看看!!!
另外你数据库这个字段是什么类型啊?我想问一下,rs.getString("tidcard")应该写在那个位置,为什么我写的几个位置不是报错,就是不输出呢


在if里面亲!!! --------------------编程问答-------------------- 肯定是程序的问题,如果struts2的问题那他就不会有人用了,试着debug看
补充:Java ,  Java EE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,