救我~~~我不想活了~~
taoyi 2004-09-08 04:56:04 以下方法获得一个UserObject对象
代码
public UserObject get(int id) throws SQLException{
PreparedStatement stmt = conn.prepareStatement(SELECT_ID);
stmt.setInt(1, id);
ResultSet rs = stmt.executeQuery();
UserObject user = new UserObject();
if (rs.next()) {
user.setID(rs.getInt("ID"));
user.setLoginName(rs.getString("登录名"));
user.setName(rs.getString("姓名"));
user.setPassword(rs.getString("密码"));
user.setEmail(rs.getString("邮箱"));
user.setPhone(rs.getString("电话"));
user.setAddress(rs.getString("地址"));
user.setCompany(rs.getString("工作单位"));
user.setMemo(rs.getString("备注"));
}
return user;
}
以下main方法测试通过,能够得到正确的结果.
代码
public static void main(String[] args) throws SQLException{
UserOp uop = new UserOp();
UserObject user = uop.get(1);
System.out.println(user.getName());
System.out.println(user.getEmail());
}
为了便于代码和页面设计分离,,封装了一个标签,代码如下
代码
package cn.gov.mscredit.bean;
import javax.servlet.jsp.tagext.*;
import javax.servlet.jsp.*;
import cn.gov.mscredit.business.*;
import cn.gov.mscredit.entity.*;
public class DisplayUserBean extends TagSupport {
private int id = 0;
public void setID(int id) {
this.id = id;
}
public int doEndTag() throws JspException{
try {
UserOp op = new UserOp();
UserObject user = op.get(id);
String outStr = "<tr><td>姓名</td><td>";
outStr += user.getName();
outStr += "</td></tr><tr><td>邮箱</td><td><a href=mailto:";
outStr += user.getEmail();
outStr += ">" + user.getEmail() + "</a></td></tr><tr><td>电话</td><td>";
outStr += user.getPhone() + "</td></tr><tr><td>地址</td><td>";
outStr += user.getAddress() + "</td></tr><tr><td>单位</td><td>";
outStr += user.getCompany() + "</td></tr>";
this.pageContext.getOut().print(outStr);
}catch(Exception e) {}
return EVAL_PAGE;
}
}
标签定义如下:
代码
<tag>
<description>Display user information</description>
<name>DisplayUserBean</name>
<tag-class>cn.gov.mscredit.bean.DisplayUserBean</tag-class>
<body-content>empty</body-content>
<attribute>
<name>id</name>
<required>true</required>
</attribute>
</tag>
以下是页面文件代码:
代码
<%@ page language="java" contentType="text/html;charset=gb2312"%>
<%@ page import="cn.gov.mscredit.db.*"%>
<%@ page import="java.sql.*" %>
<%@ page import="cn.gov.mscredit.entity.*" %>
<%@ page import="cn.gov.mscredit.business.*" %>
<%@ taglib prefix="mscredit" uri="/WEB-INF/taglib/taglib.tld" %>
<!DOCTYPE HTML PUBLIC "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<title>测试页</title>
</head>
<body bgcolor="#FFFFFF">
<table border=1><mscredit:DisplayUserBean id="1"/></table>
</body>
</html>
浏览时未出现任何编译错误~~,但让人不解的是,最终的输出的userObject对象的所有属性值均为null~~~~WHY??????
老大,,,,,快救我吧~~~,我快要跳楼了~~~~~
环境:jdk1.4.2 + tomcat5.0