Linux中国  设为主页
 收藏本站
 
当前位置: > 首页 ->Linux技术 ->系统管理 ->JSP专题:第六部分:用JSP实现聊天室-1
  相关分类: 
入门与提高
系统管理
网络应用
嵌入式系统
内核研究
服务器相关
发行版专区
Linux程序设计
Linux安全
BSD相关
桌面应用
  站内搜索: 
热门文章排行
热门文章排行 Adaptec 2100S RAID卡安装快速指南 (05-05)
JSP专题:第六部分:用JSP实现聊天室(05-05)
Linux 99问(一)(05-05)
Linux系统中网络配置详解(05-05)
JSP专题:第六部分:用JSP实现聊天室(05-05)
精采文章排行
精采文章排行 Motorola微处理器bootloader分析与应(06-04)
Linux系统:让内存不再泄漏的实用技(06-04)
Fedora Core5 NFS服务器搭建过程介绍(06-04)
新手看招 手把手教你安装VMware虚拟(06-04)
“侵权事件” 红帽称微软企图干扰用(06-04)
  ·Fedora Core5 NFS服务器搭建过程介绍 ·Linux系统:让内存不再泄漏的实用技巧 ·新手看招 手把手教你安装VMware虚拟机 ·“侵权事件” 红帽称微软企图干扰用户 ·删除Linux后 如何找回Windows启动菜单 ·菜鸟乐园 Linux中常见文件系统格式介绍 ·Linux操作系统下IPTables配置方法详解 ·实用技巧 Linux系统的经典使用技巧八则 ·Linux系统文件优化及磁盘检查方法介绍

JSP专题:第六部分:用JSP实现聊天室-1

作者:Webmaster   来源:Linux-cn.com   点击:   日期:2007-05-05 [收藏] [投稿]

  IE是否经常中毒?推荐您

一、有关聊天室

  网上的聊天室比比皆是,在凡上过网的不知道聊天室的应该不多。从技术角度看,聊天室所需要处理的是这样三种信息:

  1. 当前用户
  2. 各聊天室中的在线用户
  3. 各聊天室中用户发出的聊天信息

二、有关我们的程序

  在这里,我们将提供一个聊天室的简单的JSP程序。我们的程序是按照JSP Model 2的规范来实现的。简而言之,就是我们将绝大多数处理用户请求的任务交给Servlet来执行,而我们的JSP仅仅是用来完成显示。

  在阅读我们的程序之前,你最好已经具备了Java和JSP的基础知识,但是如果你对Java和JSP不是太熟悉,你也可以直接阅读我们的程序,对于每一项涉及到Java和JSP的内容,在我们的程序中第一次出现时,我们会作简要的说明。

  当然,你还是需要阅读其他的相关教程,因为我们的这篇文章毕竟不是一个教程。

  此外,我们的聊天室是挂接在另一个应用系统上的,对于其中一些特殊的命令方法,你可以不必太介意。

三、用户登录

  3.1保存用户信息的数据库

  作为一个聊天室,你需要永久性地保存一些有关用户的信息。这时,你最好使用数据库来完成。

  在我们的数据库中建立了一个表:x_yyxtyh以保存用户的信息:


 CREATE TABLE x_yyxhyh (
id_swgzry char(6),/*用户ID*/
id_swjg char(10),/*该字段对本聊天室无意义*/
name_swgzry char(8),/*用户名*/
yyxtyhkl char(30),/*用户口令*/
sfks char(1)/*该字段对本聊天室无意义*/
          );

  3.2一个说明用户的类


oneUser.java:
package customers;
import java.util.*;
public class oneUser
  {String oneUserId;/*用户ID*/
   String oneUserName;/*用户名*/
   long oneUserTime;/*用户时间*/
   String oneUserPosion;/*用户位置*/
   String oneUserSwjg;/*该属性对本聊天室无用*/
   String oneUserSfks;/*该属性对本聊天室无用*/
   int retimeUser[]=new int[3];/*用户在各聊天室中用户列表自动刷新时间*/
   int retimeChat[]=new int[3];/*用户在各聊天室中聊天信息自动刷新时间*/
   public void setOneUser(String thisOneUserId,String thisOneUserName,
   long thisOneUserTime,String thisOneUserPosion,String thisOneUserSwjg,
   String thisOneUserSfks) 
   //新用户设定
     {oneUserId=thisOneUserId;
      oneUserName=thisOneUserName;
      oneUserTime=thisOneUserTime;
      oneUserPosion=thisOneUserPosion;
      oneUserSwjg=thisOneUserSwjg;
      oneUserSfks=thisOneUserSfks;
      retimeUser[1]=20;
      retimeChat[1]=20;
      retimeUser[2]=20;
      retimeChat[2]=20;
     }
   public void setPosition(String thisOneUserPosion) 
   //用户位置设定
     {oneUserPosion=thisOneUserPosion;
     }
   public void setUserTime(long thisOneUserTime) 
   //用户时间设定
     {oneUserTime=thisOneUserTime;
     }
   public void setRetimeUser(int thisRetimeuser,int intchatroom) 
   //用户列表自动刷新时间设定
     {retimeUser[intchatroom]=thisRetimeuser;
     }
   public void setRetimeChat(int thisRetimechat,int intchatroom) 
   //聊天信息自动刷新时间设定
     {retimeChat[intchatroom]=thisRetimechat;
     }
   public String getUserId() 
   //获取用户ID
     {return oneUserId;
     }
   public String getUserName() 
   //获取用户名
     {return oneUserName;
     }
   public long getUserTime() 
   //获取用户时间
     {return oneUserTime;
     }
   public String getUserPosion() 
   //获取用户位置
     {return oneUserPosion;
     }
   public String getUserSwjg() 
   //该方法对本聊天室无用
     {return oneUserSwjg;
     }
   public String getUserSfks() 
   //该方法对本聊天室无用
     {return oneUserSfks;
     }
   public int getRetimeUser(int intchatroom) 
   //获取用户在某聊天室中用户列表刷新时间
     {return retimeUser[intchatroom];
     }
   public int getRetimeChat(int intchatroom) 
   //获取用户在某聊天室中聊天信息刷新时间
     {return retimeChat[intchatroom];
     }
  }
 

  事实上,这是一个典型的Java类的声明。按照Java的某种可能算是极端的观念:世间万物都是类。让我们跟随这段源代码来看看如何申明一个Java类。

  首先,第一行是“package customers;”,这一行用来说明这个类所隶属的包。在我们的程序中,我们的包的名字是customers,包是一种命名和可视控制的机制,而其最基本的作用应该是一种命名机制。“包名.类名”将唯一对应一个特定的类的声明。

  第二行是“import java.util.*;”,import语句必须在package语句之后(如果有的话),而必须在任何类定义之前,import语句的一般格式是import p1[.p2].(classname|*),这里,p1是顶层包名,p2是下一层包名,其间用点号“.”隔开。除了文件系统的限制外,对包的层次深度没有限制。最后,指定一个显式的classname或星号“*”,其指示Java编译器应该引入整个包。通过import语句引入的某些类或整个包将变得可见。说得通俗一点,就是在引用相应的类时,你可以直接使用类名,而不必使用“包名.类名”的格式。

  从“public class oneUser”开始我们声明了一个名为oneUser的类。在其下的内容全部是该类的类体。

  类声明的完整语法是“[类修饰符] class 类名 [Extends子句] [Implements子句] 类体”。

  类修饰符我们一般选用public,那么该类可以被任何对象引用或继承,如果你不使用类修饰符,默认的情况是只局限于同一个包中的其他对象可以引用和继承该类。此外类修饰符还有final、abstract等。

 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<

上一页12 3 4 下一页

上一篇:Java2下Applet数字签名具体实现方法   下一篇:JSP专题:第六部分:用JSP实现聊天室-2
文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论

   相关文章:
·Motorola微处理器bootloader分析与应用

   文章评论:(1条)
  
 请留名: 匿名评论   点击查看所有评论 论坛讨论
 

 声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。