收藏 分销(赏)

J2EE程序设计——课程设计报告.doc

上传人:天**** 文档编号:2302117 上传时间:2024-05-27 格式:DOC 页数:14 大小:746KB 下载积分:8 金币
下载 相关 举报
J2EE程序设计——课程设计报告.doc_第1页
第1页 / 共14页
J2EE程序设计——课程设计报告.doc_第2页
第2页 / 共14页


点击查看更多>>
资源描述
______________________________________________________________________________________________________________ 成 都 信 息 工 程 学 院 课程设计报告 课程名称: J2EE程序设计 题目名称: 简单微博系统 学生学号: 2009121097 学生姓名: 邓 涛 技术报告(20分) 程序及运行(60分) 答辩 (20分) 总分 设计评语: 一、程序功能模块划分 1.系统功能模块框图 图1 系统功能模块框图 2.各功能的具体实现内容 1) 用户注册模块:用户输入的注册信息包括,用户名、用户密码、用户真实姓名、手机号、Email、QQ号码。在用户注册模块要求检查用户名是否已存在,检查输入Email是否存在,如果存在则不让用户注册。 2) 用户登陆模块:用户打开登陆模块,要求用户输入用户注册的用户名以及对应密码,用户密码验证成功,则加载用户的相关信息,包括用户的好友列表,粉丝列表,已广播微博信息以及关注好友发送的微博信息。 3) 好友管理模块:该模块登陆用户可以查看到自己已添加的好友列表,添加新注册用户为自己的好友,删除自己已添加的好友。 4) 粉丝查看模块:登陆用户可以通过该模块看到自己的粉丝列表(即将当前用户添加为好友的用户列表)。 5) 微博管理模块:登录用户可以使用该模块查看自己以广播的微博信息,并对广播的微博信息删除,查看好友广播的微博信息。 二、功能实现流程图 1.系统主功能 图2 系统主功能实现流程图 2.异步刷新好友微博信息功能 图3 异步刷新的方式显示最新的好友发布的微博信息功能实现流程图 三、数据库设计 1.数据库E-R图 图4 数据库E-R图 2.数据库表设计 1) 表名:_user 2) 说明:存储用户的基本信息 3) 表结构 表1 _user表结构设计 字段名 类型 长度 主外键 可否为空 备注 id int PK not null 用户id,自增 name varchar 45 not null 用户登录名 password varchar 150 not null 用户密码密文 reg_date datetime null 用户注册日期 fan_num int null 用户粉丝数量 edite_date datetime null 用户信息修改日期 real_name varchar 45 null 真实姓名 cell_phone varchar 20 null 用户手机号 email varchar 45 not null 用户Email地址 qq_num varchar 45 null 用户QQ号 1) 表名:_friend 2) 说明:存储用户的好友信息 3) 表结构 表2 _friend表结构设计 字段名 类型 长度 主外键 可否为空 备注 id int PK not null 记录id,自增 userid int FK not null 用户的ID号 friendid int not null 所加好友的ID号 1) 表名:_blog 2) 说明:存储用户发送的微博信息 3) 表结构 表2 _blog表结构设计 字段名 类型 长度 主外键 可否为空 备注 id int PK not null 微博id,自增 type int not null 1文字,2图片微博 content varchar 500 not null 微博内容 publishe_date datetime null 微博发布时间 image varchar 200 null 图片URL userid int FK not null 用户ID 四、程序设计 1.程序分层设计结构图 图5 程序分层设计结构图 2.所使用框架的配置过程 1).Struts2的配置 a.用过Myeclipse的为工程添加Struts Capabilities,选择Struts版本2.2如下图,web即完成struts2的filter以及struts.xml文件的相关配置 需要为工程添加action在struts.xml中进行相关配置。 2).Hibernate配置 a.用过Myeclipse的为工程添加Hibernate Capabilities,不添加Hibernate.cfg.xml文件,也不需要HibernateSessionFactory(后面和Spring集成,不需要这个配置文件了)。 b.通过Hibernate Reverse Engineering生成Hibernate与数据库的映射文件以及Model。 3).Spring配置 a.同样为工程添加Spring Capabilities,在web.xml添加context-param传递参数contextConfigLocation把值设置为Spring的配置文件地址。同时设置Spring的listener如下图 完成配置后工程结构如下图: 在包cn.edu.cuit.dida.miniblog.hibernate下面存放Hibernate的映射文件 在包cn.edu.cuit.dida.miniblog.spring存放Spring的DI相关的配置信息 在包config.spring包中配置了数据源以及SessionFactory的信息 3.功能实现的主要代码 1). JS用户好友微博信息实时刷新 /** * ajax加载好友的微博信息 */ function loadFriendsBlogs() {…… friendsBlogInterval = window.setInterval(function(){ $.ajax({ type : "POST", url : "user/Blog_getFriendsNewBlogs?format=json&showedCount=0&requestCount=10&beginDate=" + beginDate, success : function (result) { beginDate = result["updateDate"]; if (result["blogs"].length > 0) { for (var i = 0, l = result["blogs"].length; i < l; i ++) { if (result["blogs"][i]["type"] == 1) { $("#friends-blog-user-success").html( …… ); } else { $("#friends-blog-user-success").html( …… ); } } $("#friends-blog-loading-faild").hide(); $("#friends-blog-user-success").show(); } } }); }, 10000);//定时每10s访问服务器请求用户好友更新微博信息 …… } 2).服务器端查询出用户新发布微博关键代码 五、设计经验总结 1. 对框架使用的体会 在web开发过程中使用了框架,更能专注于业务逻辑的开发。在我对框架的使用中,对使用Struts2好处的体会颇深,以前用servlet写web程序时候,接收参数是一个比较麻烦的问题,乱码的问题,让你不得不去处理各种原因引起的乱码,同时对参数的接收也不得不去写request.getParameter……这样繁琐的方法,有了Struts2只需要给对应的Action中提供对应属性的setter,struts2即可自动为我们完成参数的赋值。 再说使用Hibernate,Hibernate作为持久层的一个优秀的框架,完成了数据库到java对象的映射,之前自己通过JDBC连接数据库,写Sql语句是很繁琐的事情,现在在Hibernate下面变得非常简单。 最后Spring,以前没使用Spring的时候没怎么体会到Spring的好处,说实话现在用了Spring也没在我的这个小项目中体会到他的优势,在SSH整合中Action的实例化由Spring容器来管理了,而Spring对Action的管理成为了单例模式,所以以前我在使用Struts2的习惯在整合了Spring后遇到了点不是很方便的问题,没具体去测试Spring管理的Action是对和用户单个Session是一个单例还是对所有的用户都是一个单例。 总的来说SSH给web开发带来了很多方便的地方,学习框架,主要应该是体会设计的思想,升入理解MVC模式。在使用框架过程中,框架在给我们的使用带来方便的同时也带来了一些陷阱。 2. 代码实现和调试经验总结 Spring对Action的管理是采用的单例模式,之前刚编写代码的时候对这个模式的不够了解,让我在Action对一个在之前被赋值为null的变量老是出现null pointer异常信息。 3. 设计不足总结 在设计中仅对用户好友的广播实行是实时刷新,未对用户粉丝列表做实时刷新的实现。 Welcome To Download !!! 欢迎您的下载,资料仅供参考! 精品资料
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 研究报告 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服