zoukankan      html  css  js  c++  java
  • 聊天室

    1.框架页

     1 <%@ page language="java" contentType="text/html; charset=UTF-8"
     2     pageEncoding="UTF-8"%>
     3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
     4 <html>
     5 <head>
     6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     7 <title>Insert title here</title>
     8 <style type="text/css">
     9     .red{
    10         color:red;
    11     }
    12 </style>
    13 </head>
    14 <!-- 框架页 -->
    15 <!-- 首先分上下两部分  -->
    16 <frameset rows="75%,*">
    17     <!-- 上面的页面又分左右两部分 -->
    18     <frameset cols="75%,*">
    19         <frame src="recoder.jsp"></frame>
    20         <frame src="userList.jsp"></frame>
    21     </frameset>
    22     <frame src="message.jsp"></frame>
    23 </frameset>
    24 </html>

    2.登陆页

     1 <%@ page language="java" contentType="text/html; charset=UTF-8"
     2     pageEncoding="UTF-8"%>
     3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
     4 <html>
     5 <head>
     6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     7 <title>登陆页</title>
     8 </head>
     9 <body>
    10 <h1>欢迎进入xxx聊天室</h1>
    11 <form action="doAction.jsp" method="post">
    12     用户名:<input type="text" name="txtName"/><br/>
    13&nbsp;&nbsp;码:<input type="password" name="txtPwd"/><br/>
    14     <button type="submit" value="Login">登录</button>
    15 </form>
    16 </body>
    17 </html>

    3.聊天记录页

     1 <%@ page language="java" contentType="text/html; charset=UTF-8"
     2     pageEncoding="UTF-8"%>
     3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
     4 <html>
     5 <head>
     6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     7 <title>发送聊天信息</title>
     8 </head>
     9 <body>
    10 <h1>发送聊天信息</h1>    
    11 <!-- 这里要注意,点击发送按钮后,提交给当前页来处理发送信息的业务 -->
    12 <form action="message.jsp" method="post">
    13     <input type="text" size="40" name="txtMessage"/><input type="submit" value="发送"/>
    14 </form>
    15 <%
    16     request.setCharacterEncoding("utf-8");
    17     //点击发送,将当前用户的聊天信息保存到application对象中,以便其他用户也可访问
    18     String message = request.getParameter("txtMessage");
    19     if(null == message){//【特别注意这里的逻辑!!!】
    20         return;
    21     }
    22     //到全局对象中拿到历史聊天记录,(record是我们自己定义的聊天记录的关键字,可以自行更改)
    23     Object objRecord = application.getAttribute("record");
    24     StringBuilder record = null;
    25     if(null == objRecord){//证明还没人聊天
    26         //构建新的聊天记录对象
    27         record = new StringBuilder();
    28         //将新聊天记录对象放在全局对象中,以便下次调用
    29         application.setAttribute("record", record);
    30     }else{
    31         //如果聊天记录对象不为空,就去出来,并进行强转,以便后续的使用
    32         record = (StringBuilder)application.getAttribute("record");
    33     }
    34     //将当前用户的聊天记录拼接在全局变量中
    35     Object objUser = session.getAttribute("loginName");
    36     record.append("<strong>" + objUser + "</strong>:<span class='red'>" + message + "</span><br/>");
    37     //将聊天记录对象放回到application中
    38     application.setAttribute("record", record);
    39 %>
    40 </body>
    41 </html>

    4.发送聊天信息页

     1 <%@ page language="java" contentType="text/html; charset=UTF-8"
     2     pageEncoding="UTF-8"%>
     3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
     4 <html>
     5 <head>
     6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     7 <meta http-equiv="Refresh" content="3">
     8 <title>聊天记录页</title>
     9 </head>
    10 <body>
    11 <h1>聊天记录页</h1>
    12 <%
    13     //接受聊天记录并显示
    14     Object objRecord = application.getAttribute("record");
    15     StringBuilder record = new StringBuilder();
    16     if(null != objRecord){
    17         record = (StringBuilder)objRecord;
    18     }
    19 %>
    20 <%=record %>    
    21     
    22 </body>
    23 </html>

    5.用户列表页

     1 <%@ page language="java" contentType="text/html; charset=UTF-8"
     2     pageEncoding="UTF-8"%>
     3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
     4 <html>
     5 <head>
     6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     7 <title>用户列表页</title>
     8 </head>
     9 <body>
    10 <h1>用户列表页</h1>
    11 <%
    12     request.setCharacterEncoding("utf-8");
    13     //接受好友并显示
    14     //将用户好友列表信息保存到application对象中,以便其他用户也可以访问
    15     Object objUserList = application.getAttribute("loginName");
    16     StringBuilder userList = null;
    17     if(null == objUserList){
    18         //如果没有好友列表,就构建新的好友列表
    19         userList = new StringBuilder();
    20         //将新好友列表对象放在全局对象中,以便下次调用
    21         application.setAttribute("loginName", userList);
    22     }else{
    23         //如果好友列表对象不为空,就取出来,并进行强转,以便后续的使用
    24         userList = (StringBuilder)application.getAttribute("loginName");
    25     }
    26     //将当前用户的聊天记录拼接在全局变量中
    27     Object objUser = session.getAttribute("loginName");
    28     userList.append("<strong>" + objUser + "</strong><br/>");
    29     out.print(userList);
    30 %>
    31 </body>
    32 </html>

    6.处理业务页

     1 <%@page import="java.util.ArrayList"%>
     2 <%@page import="java.util.List"%>
     3 <%@ page language="java" contentType="text/html; charset=UTF-8"
     4     pageEncoding="UTF-8"%>
     5 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
     6 <html>
     7 <head>
     8 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     9 <title>处理登录</title>
    10 </head>
    11 <body>
    12 <%
    13     //省略验证代码
    14     //假设用户是合法的
    15     request.setCharacterEncoding("utf-8");
    16     String name = request.getParameter("txtName");
    17     String pass = request.getParameter("txtPwd");
    18     if(null != name || "".equals(name) || null != pass || "".equals(pass) ){
    19         //如果是合法用户,就分配给用户一个身份,并且将用户的信息保存到session对象中,以便其他页面可以共享
    20         session.setAttribute("loginName", name);
    21         session.setAttribute("password", pass);
    22         //注销
    23         //session.invalidate();
    24         response.sendRedirect("main.jsp");
    25     }else{
    26         response.sendRedirect("login.jsp");
    27     }
    28 %>
    29 </body>
    30 </html>
  • 相关阅读:
    Java 泛型 泛型的约束与局限性
    Java 泛型 泛型方法
    Java 泛型 泛型数组
    Java 泛型 协变性、逆变性
    Java 泛型 协变式覆盖和泛型重载
    Java 泛型 泛型代码和虚拟机
    Insertion Sort List
    Remove Duplicates from Sorted List II
    String to Integer (atoi)
    SpringMvc源码入门
  • 原文地址:https://www.cnblogs.com/ivy-xu/p/5479569.html
Copyright © 2011-2022 走看看