资源描述
个人空间交友系统
JAVA程序设计Ⅱ课程设计
题目
个人空间设计与制作
专 业 名 称
学生姓名
学号
指导教师
完成时间
目录
目录 2
1. 绪论 3
1.1 项目开发背景: 3
1.2 项目简述 3
2. 开发环境 3
3. 需求分析 4
3.1用户类型分析: 4
3.2功能需求分析: 4
4. 系统设计 5
4.1 软件组织结构 5
4.2 软件系统结构 和 类之间的引用关系 6
4.3 系统文件组织 7
4.4 系统数据库设计 10
4.5界面设计 10
5.系统的开发环境平台 15
6. 总结 15
1. 绪论
1.1 项目开发背景:
网络快速发展,个人微博 博客 个人空间 系统也有机会得以茁壮成长和迅速发展。我所开发的个人空间交友系统是在原有个人空间样式的基础之上,新添加新的使用功能模块设计出来的。对用户具有更好的友好性和适用性。
1.2 项目简述
现在系统与传统系统比较具有的总体优势:可以实现动态刷新,在用户写日志,上传图片,留言,好友管理时,必须要重新刷新当前页面,这样页面会被再次加载,用户用很长的时间来等待他感兴趣的东西,而结果可能又不是他想要的内容,这样对用户的体验就很差。我们的个人交友系统,在大多数方面可以满足用户对局部页面动态请求,而不刷新整个页面。提高了系统与用户的交互性,可以让用户很快浏览他感兴趣的内容的同时,还可以关注当前页面中的其他内容。
2. 开发环境
开发环境MyEclipse简介
MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持JSP,Servlet,Structs2.0,AJAX等全新技术。
在结构上,MyEclipse的特征可以被分为7类:
1. J2EE模型
2. WEB开发工具
3. EJB开发工具
4. 应用程序服务器的连接器
5. J2EE项目部署服务
6. 数据库服务
7. MyEclipse整合帮助
对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。
简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及除错。
3. 需求分析
3.1用户类型分析:
由于本系统是空间类交友和展示系统,因此在本系统中,需要有以下三类用户类型:
① 空间管理员
② 空间的普通用户
③ 空间好友
3.2功能需求分析:
1) 管理员模块
1、登录
当管理员打开管理员首页时,管理员输入用户名、密码、验证码后单击登录按钮,通过ajax请求后台的管理员管理逻辑,经过验证后向页面返回登录成功或密码不准确信息。完成管理员登陆,无页面跳转。
2、查看用户留言
管理员登录成功后,单击查看留言管理空白链接在后,在当前页面中显示所
有用户留言的内容,当单击删除空白链接后可以通过ajax删除该留言项, 页
面无刷新。同时,当在线用户有留言时会动态的添加到当前留言表的最后。
2、查看用户许愿
管理员登录成功后,单击查看许愿管理空白链接在后,在当前页面中显示所
有用户许愿的内容,当单击删除空白链接后可以通过ajax删除该许愿项, 页
面无刷新。同时,当在线用户有许愿时会动态的添加到当前许愿列表的最后。
2) 用户模块
① 已注册用户
1.登录
当注册用户打开个人交友系统的首页时,输入用户名,密码,验证码。验证码的生成和校验通过ajax来实现的。
2.日志管理
查看:用户在个人首页单击日志链接时可以看到所有日志列表,通过ajax请求action动态生成日志列表中的数据。
删除:用户点击日志列表后的删除空白链接,通过ajax删除该日志,页面无 跳转。
阅读:用户单击阅读链接可以跳转到该日志的页面进行阅读。
添加:用户单击添加日志按钮,可以跳转到写日志页面,在此写自己的日志。
3.相册管理
链接:用户在个人首页单击图片链接时可以跳转到图片管理页面
查看:用户点击日志列表后的最新图片选项卡,通过ajax查看最新图片,页面无跳转。
浏览:用户单击浏览图片选项卡可以动态的逐个浏览已上传的图片。
添加:用户单击添加图片选项卡可以跳转到写日志页面,在此写自己的日志。
4.好友管理
查看:用户在个人首页中可以看到所有部分好友列表,通过ajax请求action动态生成好友列表中的图片。
访问:用户单击好有图片可以跳转到该好友的个人主页。
查找:用户单击查找按钮,可以跳转好友搜素结果页面,同过ajax产生动态提示。
5.留言管理
查看:用户在个人首页单击留言链接时可以看到所有留言列表,通过ajax请求action动态生成留言列表中的数据。
删除:用户点击留言列表后的删除空白链接,通过ajax删v除该留言,页面无
跳转。
阅读:用户鼠标放在查看链接时可以动态提示该留言用户的信息。
添加:用户单击留言按钮,可以跳转到写日志页面,在日志后对其评论(留言)。
6.个人信息管理
查看和修改:用户单击个人主页的个人信息链接,跳转到用户个人信息页面,其中的数据是通过ajax自动填充的。
② 普通用户
注册
当普通用户打开个人交友系统首页时,可以单击注册按钮弹出注册面板,用户可以填写注册信息,页面无刷新。
许愿
用户单击许愿链接,跳转到许愿页面,通过ajax动态加载数据库中已有的所有许愿信息。
许愿:用户填完许愿信息后单击许愿按钮,通过ajax可也将许愿内容添加到数据库,同时在页面中展现出来。
留言
当普通用户打开个人交友系统首页时,可以单击留言链接跳转到留言页面,用户可以填写留言信息,提交到数据库。
4. 系统设计
4.1 软件组织结构
个人空间交友系统
用户管理
管理员管理
注册
登陆
日志管理
图片管理
好友管理
个人资料管理
登陆
留言管理
许愿墙管理
注册用户管理
许愿\\\留言
无
普通用户
注册用户
4.2 软件系统结构 和 类之间的引用关系
本系统是基于MVC模式的系统结构主要应用jsp,ajax/struts/Hibernate框架结构。其中jsp,ajax用于前台页面的设计,struts用于业务逻辑的控制,Hibernate主要用于持久化层的控制,ajax用于页面的局部刷新。
4.3 系统文件组织
1) 包 及 包的说明
说明:
com.lzl.Hibernate包中放的是:HibernateSessionFactory类,是hibernate连接数据库的基础类
com.lzl.Hibernate.bean包中放的是:数据库表对应的对象模型类
com.lzl.Hibernate.DAO包中放的是:对数据库中的各种表的增,删,改,查方法实现类。
com.lzl.Hibernate.ORM包中放的是:对象模型和数据库中关系模型的映射文件。
com.lzl.struts包中放的是:个人交友系统中用到的各种资源文件。
com.lzl.struts.Action包中放的是:对业务逻辑的控制,主要处理页面的请求。如浏览图片,查找好友等功能。
com.lzl.struts.form包中放的是:页面表单中对应字段的对象。
admin文件夹:存放的是管理员管理的jsp页面
product 文件夹:存放的是用户的jsp页面
2) jsp页面设计
页面名称
功能说明
Index.jsp
个人交友系统首页
lm.jsp
用户个人首页
Registuser.sp
注册用户
Picture.jsp
相册管理页面,包括上传图片,显示图片(分页显示),删除图片
a_leaveWord,jsp
普通用户给管理员留言的页面\
Logs.jsp
日志管理页面包括显示日志(分页显示),删除日志
addlog.jsp
添加日志页面
userdata.jsp
用户信息管理页面,修改用户资料
friend.jsp
用户朋友管理页面,包括朋友列表,删除朋友
addFriend.jsp
查找后添加好友页面
fndex
朋友个人首页
wishe.jsp
用户许愿页面
Admin.jsp
管理员删除不合法的许愿,用户,登录页面
u_leaveword.jsp
用户留言的页面
Browserlog.jsp
查看具体的留言信息
Linkus.jsp
联系我们静态页面
Products.jsp
对本系统的总体说明的静态页面
Aboutus.jsp
关于我们信息的静态页面
3) 各种类功能的说明
Vo类:用户(包括好友信息):user
图片:picture
日志: log
留言: leaveWord
许愿:wishes
管理员:admin
提示类: friends_prompt,log_prompt,picture_prompt
Dao类:
日志模块:logDAO
logDAOipm
好友模块:friendDAO
FriendDAOipm
图片模块:pictureDAO
PictureDAOipm
注册模块:registDAO
RegistDAOipm
许愿模块:wishDAO
WishDAOipm
查询模块:searchDAO
searchDAOipm
个人资料管理模块:userDao
UserDAOipm
Control(控制类):userActionDispatch
PictureActionDispatch
FriendActionDispatch
logActionDispatch
WishActionDispatch
UserIndexAction
SearchActionDispatch
4.4 系统数据库设计
4.5界面设计
登录首页:
注册页面:
后台管理界面:
空间主页面:
添加日志页面:
用户留言页面:
5.系统的开发环境平台
开发工具:jdk1.6.0 + MySql + MyEclipse_6.5
开发环境:windowsXP
6. 总结
心得体会:
需求分析是项目开发的关键
数据库的设计关系到整个项目的进展,没有成功合理的数据库结构软件开发将无中心可寻。
本次课程设计中我尝试使用:ajax+struts+hibernate ,ajax+servlet+sql;
Json, ml作为数据回传格式。在这些技术结合中,我们深刻的体会到在相同环境下,用hibernate对数据库进行操作效率较慢,而用sql则用户响应较快。
可以深刻的体会到,HTML静态页面的重要性,没有一个漂亮的页面,用户体验较差。
在本课程设计中,我明白了理论与实际应用相结合的重要性,并提高了自己组织数据及编写Java web程序的能力。培养了基本的、良好的程序设计技能以及合作能力。这次课程设计同样提高了我的综合运用所学知识的能力。并对MyEclipse有了更深入的了解。
总的来说,本次课程的学习和课程设计过程当中让我对Java web开发有了更加深刻和越发清晰的认识,也让我在技术和知识上有了更大的提高;另一方面,通过本次开发,我也更加清楚的认识到在技术经验和基本知识技能方面的欠缺,给了我更大的动力去探索和学习Java web开发的相关知识。
16
展开阅读全文