基于SSH的人人网系统的设计与实现


打开文本图片集

摘要:人人网作为一个提供社交服务的网站,它为不同身份的人提供了一个全方位的互动交流平台。该文利用SSH(StrutsSpring - Hibernate)设计和开发了人人网系统,包括注册、登录、日志、个人资料、留言、访问好友等功能模块。此外,还适当地使用了web2.0技术-Ajax,用异步传输的方式来增强用户体验。

关键词:人人网;SSH;Ajax

中图分类号:TP393文献标识码:A文章编号:1009-3044(2012)24-5932-02

Design and Implementation of RenRen Network System Based on SSH

WANG Hong -xing1, CHEN Jing-jing2

(1.DO-FLUORIDE CHEMICALS CO.,LTD, Jiaozuo 454191,China; 2.Central China Securities Nanyang Business Department, Nan? yang 473000, China)

Abstract: RenRen Network, as a provider of social services site, provides a full range of interactive communication platform for the differ ent identities. This paper uses SSH to design and develop RenRen network system., including its registration, login, log, personal informa tion, messages, access friends and other functional modules. In addition to, the system uses web2.0 technology–Ajax properly, to increase the experience of user by the method of asynchronous transmission.

Key words: RenRen Network; SSH; Ajax

近年来计算机技术的快速发展,特别是计算机网络的发展,越来越深刻的改变了人们生活的方方面面。使得人们能以更低廉的价格,开发出更方便、更实用的网络工具。各种在线服务系统,更是深刻的影响了人们的联系方式,使得人们可以在远隔千里之遥随时通讯。过去的种种陈旧的联系方式,已经不能满足现代生活的需要。人人网作为一种方便同学之间联系的实用系统便应运而生。

人人网就是基于及Web等技术而建立起来的社交网络,帮你运营朋友圈里的朋友。通过人人网,不仅可以展示自己,发表自己的想法、记录生活的点滴,还可以联络你周围的朋友,找老同学,结识新朋友,和他们分享相片、音乐和电影,帮助你与朋友、同学、同事、家人保持更紧密的联系。

本系统是基于Struts、Hibernate、Spring三大框架及Ajax等技术构建的,运行于Web环境下,以MyEclipse7.5作为系统的前台开发环境,Sql Server 2005作为后台数据库开发,Tomcat6.0作为web服务器。可以进行注册、登录、编辑个人资料、留言、发表日志及寻找和访问好友等操作。

1相关技术介绍

1.1 Struts

Struts是Apache基金会Jakarta项目组的一个Open Source项目,它采用MVC模式,能够很好地帮助java开发者利用J2EE开发Web应用。和其他的java架构一样,Struts也是面向对象设计,将MVC模式"分离显示逻辑和业务逻辑"的能力发挥得淋漓尽致。

1.2 Hibernate

Hibernate是一个开放源码的免费框架,它的功能是面向Java技术的对象或关系数据库的一种映射工具。使用它,让程序员与关系数据库打交道变得异常轻松方便,就像从数据库中取出普通Java对象一样,不必考虑如何把它们从数据库表中取出放入对象中或放回到相应的地方去。

1.3 Spring

Spring是一个开源框架。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。

1.4 Ajax

Ajax是Asynchronous JavaScript and XML的简称,是一种由JavaScript通过XML Http Request与服务器交互更新数据的一种异步请求的技术,因为通过Ajax,你只需传递需要更新的数据,而不是整个页面,所以Ajax很适合用于局部频繁更新的页面。

2系统分析

针对人人网的实际需求,该系统要完成以下功能:

1)用户可注册为人人网会员。

2)用户可登陆人人网进行各项操作。

3)用户在登陆人人网后可编辑个人资料。

4)用户在登陆人人网后可发表日志,并可浏览、修改、删除自己的日志。

5)用户在登陆人人网后可查看好友列表。

6)用户在登陆人人网后可查看访问人数,最近访问者等信息。

7)用户在登陆人人网后可进入好友主页,可查看好友日志,留言,状态等,但不可编辑好友发表的内容。通过以上对系统功能的分析,可对系统功能进行模块划分,系统功能模块结构图1如示。

图1系统功能模块结构图

1)注册功能:用户可通过唯一账号在完成基本信息(密码、生日、性别等)填写后,注册为人人网会员后,方可使用人人网提供的功能。

2)登陆功能:人人网注册用户可凭唯一账号和密码登陆人人网,以使用其提供的功能。

3)个人资料:用户可编辑个人资料,上传个人头像。

4)日志:用户可创建日志分类,发表、查看、编辑和删除日志,查看日志评论、已阅读数,评论数。

5)留言:用户可发表留言,查看留言。

6)好友::用户可查看好友列表,根据好友姓名,学校,工作单位等信息搜索好友,可对特定人请求加为好友;可访问好友主页,浏览、评论好友日志;可查看、评论好友状态;可给好友留言,并对好友留言进行回复。

7)通知:用户可查看最新通知,如好友请求消息,未查看留言,未查看日志和分享的评论。

8)好友访问:用户可查看最近访问者,查看已访问人数。

9)安全中心:用户可修改现有密码,创建或修改密保问题及答案,用户可在此找回密码。

3数据库设计

该系统主要包含以下数据表:

1)ren表:用于存放注册用户的账号,密码,姓名,性别,生日,家乡,所在地,头像路径等基本信息,以及学校信息,工作信息,兴趣爱好,联系方式等。

2)log表:用于存放注册用户所写的日志信息,包括日志标题,日志内容,编辑日志时间,日志所属分类以及日志所属人。

3)blog_category表:用于存放注册用户所写的日志的分类,用户可自己添加分类。

4)blog_reply表用于存放注册用户所写的日志的回复,包括回复者,回复内容,回复时间,所属日志,状态。

5)message表:用于存储留言列表,包括留言人,留言对象,留言内容,留言时间,留言状态。

6)friend_request表:用于存储好友的请求,包括发送请求者,请求对象,请求信息,请求时间。

4系统实现

1)注册功能:注册模块要求用户输入有效信息,包括账号,密码,姓名,性别,生日及验证码,通过Javascript进行有效性验证,其中账号通过Ajax判断是否已存在。若用户输入数据不合要求,则提示用户修改。各项信息填写符合要求后,点击注册即可完成注册。

2)登陆功能:登陆模块要求用户输入账号和密码,通过判断转入用户主页或返回登陆页面。若用户忘记密码,可点击“忘记密码?”,转到安全中心通过密保问题和密保答案找回密码。若用户未注册,可在此转入注册页面。

3)个人资料:用户可编辑个人资料,此模块将个人资料分为五个部分,基本信息、学校信息、工作信息、兴趣爱好、联系方式。省市级联可采用Javascript方式或struts+ajax方式。省份和大学以及大学及院系的关联采用struts+ajax方式。行业信息及入学年份下拉列表数据从数据库中读取。通过Javascript来控制资料编辑层的显示和隐藏。

4)日志:分为日志列表,显示日志,发表新日志等几个页面。采用JSTL标签显示日志列表,日志编辑工具采用流行的Fckeditor工具。在日志列表页面,用户可根据日志分类查看日志,同时显示每个分类的日志数。点击“写新日志”图片按钮进入发表新日志页面,用户在输入标题,文章,选择日志分类后,即可提交发表文章。点击某一日志名后,转到日志显示页面,包括日志名,发表时间,所属分类,评论数,阅读数及日志评论信息,同时用户和好友对此篇日志发表评论。

5结束语

该系统运用Struts框架将MVC模式"分离显示逻辑和业务逻辑"的能力发挥得淋漓尽致,更有利于开发WEB应用。Hibernate的应用使数据的使用处理更加方便灵活,提高了代码的重用性、程序的可行性和运行效率。而Spring的运用则大幅地减少了程序的复杂性,让程序更加轻便。

参考文献:

[1] Eckel B.Thinking in Java(4) [M].北京:机械工业出版社,2007.

[2]孙卫琴.精通Hibernate[M].北京:电子工业出版社,2005.

[3] Rob Harrop.Spring专业开发指南[M].北京:电子工业出版社,2006.

[4]孙卫琴.精通struts[M].北京:电子工业出版社,2004.

[5]彭万波.网页设计精彩实例[M].北京:电子工业出版社.2002.

[6]周之英.现代软件工程[M].北京:科学出版社,2000.

[7]杨贵,杨兴.21天学通JavaScript[M].北京:电子工业出版社,2009.

[8]刘乃英.JavaEE项目案例-基于Eclipse Spring Struts Hibernate[M].北京:人民邮电出版社,2008.

[9] Tom Negrino,Dori Smith.JavaScript&Ajax Sixth Edition[M].北京:人民邮电出版社,2007.

[10] SIMON BROWN.JSP编程指南[M].北京:电子工业出版社,2004.

[11]张淑梅,张海春.动态实现Web页面中多级下拉菜单[J].石家庄师范专科学校学报,2001,3(2):33-35.

[12]蒋德华,张伟.基于B_S架构的网站设计研究[J].软件导刊,2008,7(5):109-110.

推荐访问:的人 人网 设计 系统 SSH