您所在的位置: 首页>>读书频道>>设计开发>>Java系列>>

14.19.2 用户管理业务

http://book.51cto.com  2008-05-21 15:28  杨磊/陈凌云编著  人民邮电出版社  我要评论(0)
  • 摘要:《精通Eclipse Web开发——Java体系结构、工具及框架整合应用》第14章为您介绍的是网络文件管理系统(Sturts+MySQL+JDBC),本节主要讲述了用户管理业务。
  • 标签:Eclipse Web  管理功能  Java  Java体系结构  工具  框架  应用

14.19.2  用户管理业务

用户管理功能是由业务类ClientManag-
ement来实现的。在用户功能控制一节可以看到,实际的进入用户管理功能页面的层次如图14.50所示。

在Login.jsp页面中使用了ClientVisit标签。在ClientVisit标签中创建了ClientManagement对象,然后调用了该对象的doplay()函数。也就是说,最底层核心的部分应该在doplay()函数中。现在来看ClientManagement的代码,可以看到,在doplay()函数中,实际上输出了很多HTML的代码。这些代码和Java代码一起,把用户的信息显示在页面中,并提供了一个修改信息的链接,如图14.51所示。

 
图14.50  进入用户管理层次图
 
图14.51  用户信息与修改信息链接
在图14.52中,箭头所指处就是前往修改用户个人信息页面的链接,该链接地址是/Modi-fication.do,即到达Modify.jsp页面,具体代码如下:
package bit.jeffy.business;
import javax.servlet.jsp.JspWriter;
import bit.jeffy.db.DataStore;
import java.sql.*;
//用户管理业务类
public class ClientManagement {
    private JspWriter out;        //输出对象
  private String ZH = null;       //用户账号
  private DataStore ds = null;      //获取数据库访问实例

  public ClientManagement(JspWriter jw, String user) { //构造函数要获取两个参
  数:JspWriter和user
    out = jw;
ZH = user;
    if (ds == null)     //如果ds为空,则重新获取访问数据库的实例
     ds = DataStore.getInstance();
  }

  public void doplay() throws Exception {    //执行业务逻辑的函数
    ResultSet st = null;
    //定义一个从数据库读取指定账号的用户记录
    String sql = "select * from Client where ZH='" + ZH + "'";
    String ZH="", XM="", XB="", MAIL="", PHONE="", QQ="", DESCRIPTION="";
    int PUBLIC = 0;

    if (ds != null)        //读取当前用户信息
         st = ds.read(sql);
      if (st != null && st.next()) {    //把当前用户的信息输出到页面中
         ZH = st.getString("ZH");
         XM = st.getString("XM");
         XB = st.getString("XB");
         MAIL = st.getString("MAIL");
         PHONE = st.getString("PHONE");
         QQ = st.getString("QQ");
         DESCRIPTION = st.getString("DESCRIPTION");
         PUBLIC = st.getInt("IFPUBLIC");
    }
            //把用户信息显示出来
    out.print("<table width=591 height=600 border=1 cellpadding=1 cellspacing=0
bordercolor=#0099FF>");
    out.print("<tr align=center><td colspan=2 class=BodyHeader_Middle>用
户个人资料</td></tr>");
    out.print("<tr><td width=130 class=bookText>账户名</td>");
    out.print("<td width=451 class=bookText>"+ZH+"</td></tr>");
    out.print("<tr><td class=bookText>姓名</td>");
    out.print("<td class=bookText>"+XM+"</td></tr>");
    out.print("<tr><td class=bookText>性别</td>");
    out.print("<td class=bookText>"+XB+"</td></tr>");
    out.print("<tr><td class=bookText>邮箱</td>");
    out.print("<td class=bookText>"+MAIL+"</td></tr>");
    out.print("<tr><td class=bookText>电话</td>");
    out.print("<td class=bookText>"+PHONE+"</td></tr>");
    out.print("<tr><td class=bookText>QQ号码</td>");
    out.print("<td class=bookText>"+QQ+"</td></tr>");
    out.print("<tr><td class=bookText>是否公开个人资料</td>");
    if( PUBLIC == 0 )
      out.print("<td class=bookText>是</td></tr>");
    else
      out.print("<td class=bookText>否</td></tr>");
    out.print("<tr><td height=109 class=bookText>个人描述</td>");
    out.print("<td align=left valign=top class=bookText>"+DESCRIPTION
+"</td></tr>");
    out.print("<tr align=center valign=middle><td height=57 colspan=2 class
=bookText>");
    out.print("<table width=525 border=0 cellpadding=0 cellspacing=0>");
    out.print("<tr><td width=99>&nbsp;</td><td width=163 align=center
class=bookText>&nbsp;</td>");
    out.print("<td width=191 align=center class=buttonText>");
//提供修改链接
    out.print("<a href=/PersonalPlatform/Modification.do>修改个人资料</a>");
    out.print("</td><td width=72>&nbsp;</td>");
    out.print("</tr></table></td></tr></table>");
  }
}
【责任编辑:夏书 TEL:(010)68476606】

回书目   上一节   下一节
深入Vista应用程序开发
网络应用性能控管最佳实践
如何有效提升企业安全审计应用水平
虚拟存储管理与应用
VMware技术应用
 
 验证码: (点击刷新验证码)   匿名发表
  • Visual C++ 完全自学宝典

  • 作者:强锋科技,朱洪波
  • Visual C++ 6.0是微软公司为程序人员提供的Visual Studio 6.0工具套件中的重要组成部分。本书由浅入深地介绍使用Visual C++ 6.0..
Copyright©2005-2008 51CTO.COM 版权所有