本文讲述如何用JAVA语言写一个简易的聊天室
简易聊天室的代码实现,因为笔者还是个正在好好学习努力进步的学生,所以代码可能还有很多可以优化的地方,仅供参考。
开发步骤:
第一部分:UI构建
第一步:编写进入页面的静态页面
第二步:编写聊天主页的静态页面
第三步:将进入页面转成动态页面
第四步:将聊天主页转成动态页面
第二部分:功能实现
第一步:编写用户进入聊天室业务逻辑
第二步:实现将用户列表显示
第三步:实现将聊天内容显示
第四步:实现发送聊天内容
用到三大作用域:
HttpServletRequest,HttpSession,ServletContext
效果图如下:
进入界面:
聊天界面:
需要的代码:
InUI.java(进入页面)
public class InUI extends HttpServlet {
private static final long serialVersionUID = 2122558975890099050L;
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//中文编码支持
req.setCharacterEncoding("UTF-8");
resp.setCharacterEncoding("UTF-8");
//页面输出对象
PrintWriter writer = resp.getWriter();
writer.println("<html>");
writer.println("<head>");
writer.println("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">");
writer.println("<title>QG聊天室</title>");
writer.println("<style type=\"text/css\">");
writer.println("<body background='./ui/g9.jpg' style=\"background-repeat ; background-size:100% 100% background-attachment:fixed;\">");
writer.println("</style>");
writer.println("</head>");
writer.println("<body>");
writer.println("<div style=\"text-align: center; margin: 200px\">");
writer.println("<div>");
Object msg = req.getAttribute("in_msg");
if(msg!=null) {
writer.println(msg);
}
writer.println("<h3>QG聊天室</h3>");
writer.println("</div>");
writer.println("<div>");
writer.println("<form action=\"in.action\" method=\"post\">");
writer.println("用户名:<input name=\"username\" size=\"30\"> <input type=\"submit\" value=\"进入\">");
writer.println("</form>");
writer.println("</div>");
writer.println("</div>");
writer.println("</body>");
writer.println("</html>");
}
}
MainUI.java
public class MainUI extends HttpServlet {
private static final long serialVersionUID = -5468244588883237637L;
@Override
protected void service(HttpServletRequest req