JSP在线交流系统编程实战
CustomerDAO.java
initConnection方法
- 通过厂商驱动或者JDBC:ODBC方式连接数据库,其得到的Connection对象后续可用来向数据库发送sql语句
getCustomerByAccount(String account)
向数据库注入sql语句
- 先用Connection的
prepareStatement(sql语句字符串)
方法得到一个PreparedStatement对象,这是为了后续往里面传参 - 用PreparedStatement对象的
setString(index,String)
方法传参 - 用PreparedStatement对象的
executeQuery()
方法得到ResultSet对象 - ResultSet对象的
next()
方法可以在结果集里移动指针到下一行,然后就能通过getString
方法得到结果集表的前一行数据
Customer.java
- 这是VO层,封装了用户的包括姓名账号在内的各种private信息,提供了getter and setter方法
loginForm.jsp
用户登录表单:
- 提供输入框供用户输入账号和密码以及提交按钮
表单提交:
- 用户提交表单后,数据会发送到
loginAction.jsp
进行处理。
背景和样式:
- 设置了背景图片和页面样式,以提升用户体验。
loginAction.jsp
通过接收 loginForm.jsp
提交的数据,验证用户账号和密码的正确性,并进行相应的处理。
- 从表单获取用户输入的账号和密码。
- 通过
CustomerDAO
查询数据库验证用户信息。 - 成功登录后,将用户信息保存在会话中,并跳转到聊天页面;失败则返回登录页面。
chatForm.jsp
chatForm.jsp
是用户成功登录后进入的聊天页面,用户可以在此页面发送消息,并查看在线用户和聊天记录。
- 消息发送表单:提供输入框和发送按钮供用户输入消息内容并提交。
- 会话管理:从会话中获取当前用户信息。
- 嵌入iframe:用于动态刷新和显示聊天消息。
chatAction.jsp
chatAction.jsp
处理用户在聊天页面发送的消息,将消息添加到消息列表中,并重定向回聊天页面。
- 从会话中获取当前用户信息。
- 获取用户输入的消息内容。
- 将消息添加到应用范围内的
msgs
列表中。 - 重定向回
chatForm.jsp
。
msgs.jsp
msgs.jsp
显示当前的消息记录和在线用户列表。页面每10秒刷新一次以显示最新消息。
- 从应用范围中获取消息列表和在线用户列表。
- 遍历并显示消息和在线用户信息。
- 设置页面每10秒刷新一次。
logoutAction.jsp
logoutAction.jsp
处理用户退出逻辑,从在线用户列表中移除当前用户,并将用户的会话失效。
- 从会话中获取当前用户信息。
- 将当前用户从在线用户列表中移除。
- 添加用户退出消息到消息列表。
- 使会话失效并重定向到登录页面。
- 标题: JSP在线交流系统编程实战
- 作者: 三葉Leaves
- 创建于 : 2024-11-07 00:00:00
- 更新于 : 2024-11-21 16:56:20
- 链接: https://leavesblog.netlify.app/329c7127383d/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论