简单聊天室采用各种内部对象不适用数据库实现。
一个聊天室要实现的基本功能是:
1.用户登录进入聊天室,
2.用户发言
3.用户可以看见别人发言
刚才算是简单的需求分析了,现在就应该是进行mvc结构的设计:
1.视图,有登陆页面login.jsp,聊天页面chat.jsp,其中chat.jsp利用框架实现,包括两部分,用户发言sendMessage.jsp和聊天信息的查看content.jsp;
2.模型,包括聊天信息的显示(类Message)和聊天信息的管理(类MessageService);
3.控制器,登录功能的控制器LoginServlet,添加消息的控制器AddMessageServlet。
整个程序实现的大致流程是这样的:每当一个用户登录聊天室,根据用户的userid把用户添加进application对象的ArrayList中,在application中保存的是当前所有在聊天的用户;用户登陆成功之后,通过控制器LoginServlet把application对象遍历,输出所有的消息,消息存储在application(消息格式:用户名+消息);用户发言,通过控制器AddMessageServlet,先在session中取出用户名,把当前消息放在application中,保存更新后的消息,跳转到聊天页面。
精简源代码:
1.登陆界面login.jsp
1
2
欢迎进入聊天室
3
4 用户名:
5
6
7
8
9
10
View Code
2.聊天界面整体框架chat.jsp
此网页使用了框架,但你的