论坛短消息
难点分析-2
JSP分析:
登录JSP :login.jsp 短消息列表JSP:listMsg.jsp 阅读短消息JSP:showMsg.jsp 发送短消息JSP:post.jsp
难点分析-3
验证
客户端验证
方式:使用JavaScript验证 验证内容:表单内容 验证成功:提交表单 验证失败:拒绝提交 使用页面:post.jsp
论坛短消息
问题描述
开发短消息系统 ,实现如下功能:
用户登录、登出 查看个人的短消息 发送短消息 回复短消息 删除短消息
该系统要满足如下要求:
已读和未读的短消息应采用不同的标记 回复时自动添写用户名 未登录不能看短消息,自动跳转到登录页面 登录后自动跳转到查看短消息列表的页面
问题分析-1
用户表:TBL_USER
类:ng.String 构造方法:String(byte[] bytes) 成员方法:getBytes(String charsetName)
开发流程
利用MYSQL创建数据库、表,插入几条测试 数据 利用MyEclipse创建工程、编写实体类 利用MyEclipse编写DAO类 利用MyEclipse编写业务类 利用MyEclipse编写登录、登出功能 利用MyEclipse编写查看和阅读短消息 利用MyEclipse编写发送、回复短消息 利用MyEclipse编写删除短消息
难点分析-1
项目类的分析
实体类
包:cn.lsu.bean 类:用户类、短消息类
操作数据库的类
包:cn.lsu.dao 类:用户数据访问类、短消息数据访问类
处理业务的类
包: 类:用户业务类、短消息业务类
处理请求的类
包:cn.lsu.servlet 类:登录登出类、短消息类
编写业务类
短消息的业务类:MessageBiz.java
private MessageDao messageDao = new MessageDao(); /** * 保存留言 * @param message 留言对象 * @return 保存条数 */ public int save(Message message){ String time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()); message.setPostTime(time); return messageDao.save(message); } ……
难点分析-4
处理JSP请求里的中文
post请求的中文处理
request.setCharacterEncoding(“utf-8");
get请求的中文处理
new String( request.getParameter("receiveUname").getBytes("ISO-8859-1") );
第一步
利用SQLSERVER创建数据库、表,插入几条 记录 利用MyEclipse创建工程,编写实体类
数据库及实体类
数据库(dbo)
用户表:TBL_USER
短消息表:TBL_MESSAGE
实体类
短消息类: Message.java
用户类: User.java
编写DAO类
BaseDao类: BaseDao.java UserDao类: UserDao.java MessageDao类: MessageDao.java
字段名称
name pass
说 明
用户名 密码 主键、字符串 非空字符串
问题分析-2
短消息表:TBL_MESSAGE
字段名称 id note sendUname receiveUname postTime readSign 说 明 短消息id 短消息内容 发送者 接收者 发送时间 读标记 非空主键、标识 非空 非空、用户表的name字段 非空、用户表的name字段 非空 非空、未读为0,已读为1
UserDao
方法
findByUname
MessageDao
方法
save delete update listByReceiveUname findMessage
编写业务类
短消息的业务类:MessageBiz.java 方法:
listByReceiveUname findMessage Delete save
显示短消息列表的JSP: listMsg.jsp 阅读短消息的JSP: showMsg.jsp
编写发送、回复短消息
发送、回复的JSP: post.jsp 发送、回复的URL: post
编写删除短消息
删除短消息URL:delete
编写业务类
用户的业务类:UserBiz.java
private UserDao userDao = new UserDao(); // 用户Dao对象
/** * 根据用户名查询用户 * @param uname 用户名 * @return 用户对象 */ public User findByUname(String uname){ return userDao.findByUname(uname); }
登录登出
利用MyEclipse编写代码实现登录 利用MyEclipse编写代码实现登出
登陆请求的url:login 登出请求的url:logout
登录的JSP :login.jsp
利用MyEclipse编写显示短消息列表 利用MyEclipse编写阅读短消息
请求阅读短消息URL:findMessage