网站地址 200 NULL Link-time Datetime 添加链接时间 NULL
3.9界面原型设计
SNS主界面展示:
图3-10 SNS主界面显示
SNS个人空间主页展示:
图3-11SNS个人空间主页展示
第4章 系统详细设计与实现
4.1系统的工程结构
本SNS博客系统基于B/S架构、采用MVC模式、即JSP+JavaBean+Servlet模型。MyEclipse开发环境下整个软件项目的结构见图4-1:
图4-1项目结构图
src文件:项目的所有包及源文件都在中、这个目录下,负责完成整个应用程序的功能实现及事件处理。
JRE:Java运行环境系统库
Webroot目录:应用程序用到的资源文件存放在Web里面,例如css目录、images目录、js目录等。其中images目录存放软件中应用程序用到的图片;css目录主要放置程序用到的界面布局文件;pages目录存放系统中各个部分程序文件:WEB-INT目录主要放置程序的配置文件。
4.2面向对象程序设计
使用Session对象HTTP协议是一种无状态协议。一个用户向服务器发出请求(request),然后服务器返回响应(response),连接就被关闭了。在服务器端不保留连接有关的的信息,因此当下一次连接时,服务器已经没有以前的连接信息了,无法判断这一次连接和以前的连接是否属于同一用户。
HttpServletRequest对象request调用getSession方法获取用户的session对象:
HttpServletRequest session=request.getSessioon(true)
一个用户在访问服务器期间,可能请求多个servlet对象,那么服务器端为该用户获取的session对象是完全相同一个,但是,服务器端为不同的用户获取的session对象互不相同。
Session对象的生存周期:一个用户在某个Web服务目录的session对象的生存期限依赖于用户是否关闭浏览器、依赖于session对象是否调用invalidate(方法)使得session无效或session对象达到了设置的最长发呆时间。如果用户关闭浏览器,那么用的session消失;如果用户长时间不关闭浏览器,用户的session也可能消失,这是因为Tomcat服务器润需用户最长的发呆时间为30分钟,发呆状态时间是指用户对某个Web服务目录发出两次的请求之间的间隔。
4.3数据库选择
本系统使用的是Mircrosoft SQL Server 2008关系型数据库。
SQL Server 2008出现在微软数据平台愿景上是因为它使得公司可以运行他们最关键任务的应用程序,同时降低了管理数据基础设施和发送观察和信息给所有用户的成本。可以组织管理任何数据。可以将结构化、半结构化和非结构化文档的数据直接存储到数据库中。可以对数据进行查询、搜索、同步、报告和分析之类的操作。数据可以存储在各种设备上,从数据中心最大的服务器一直到桌面计算机和移动设备,它都可以控制数据而不用管数据存储在哪里。
这个平台有以下特点:
可信任的--使得公司可以以很高的安全性、可靠性和可扩展性来运行他们最关键任务的应用程序。
高效的--使得公司可以降低开发和管理他们的数据基础设施的时间和成本。
智能的--提供了一个全面的平台,可以在你的用户需要的时候给他发送观察和信息。
4.4数据库的SQL语句的实现
本系统中的SQL语句类似相同,以下是对基本的SQL语句的举例:
1. 文章建表语句:
CREATE TABLE [dbo].[tb_article](
[id] [int] IDENTITY(1,1) NOT NULL,
[art_whoId] [int] NULL,
[art_title] [varchar](50) NULL,
[art_fenlei] [varchar](50) NULL,
[art_content] [ntext] NULL,
[art_pubTime] [datetime] NULL,
[art_count] [int] NULL
)
2.相册建表语句:
CREATE TABLE [dbo].[tb_photo](
[id] [int] IDENTITY(1,1) NOT NULL,
[photo_whoId] [int] NULL,
[photo_src] [varchar](200) NULL,
[photo_info] [varchar](1000) NULL,
[photo_uptime] [datetime] NULL
)
3.注册用户建表语句:
CREATE TABLE [dbo].[tb_user](
[id] [int] IDENTITY(1,1) NOT NULL,
[user_name] [varchar](50) NULL,
[user_pswd] [varchar](20) NULL,
[user_ico] [varchar](50) NULL,
[user_motto] [varchar](50) NULL,
[user_sex] [varchar](2) NULL,
[user_oicq] [varchar](15) NULL,
[user_email] [varchar](100) NULL,
[user_from] [varchar](100) NULL,
[user_blogName] [varchar](100) NULL,
[user_ctTime] [datetime] NULL,
[user_hitNum] [int] NULL
)
4.留言建表语句:
CREATE TABLE [dbo].[tb_word](
[id] [int] IDENTITY(1,1) NOT NULL,
[word_whoId] [int] NULL,
[word_content] [varchar](2000) NULL,
[word_author] [varchar](50) NULL,
[word_time] [datetime] NULL
)
4.5典型系统界面和实现技术说明
4.5.1 SNS模块实现界面第一部分
无论是已注册的用户,还是未注册的用户。当第一次进入此博客系统中的时候,首先进入的是系统首页。在首页中,本系统把一些已注册的博客用户按注册时间先后顺序有序的排放起来,供用户浏览查阅。用户可以点击博客题目进入已注册用户首页,浏览对方博客中各种信息,如文章、相册、影音等。但是此时我们是以未登录模式进入SNS博客主页,我们是不能加好友的,但是系统博客首页有效地为用户提供了其他用户信息,奠定了加好友的基础,只要在登录之后便可通过此界面快速加好友。SNS模块实现界面第一部分如图4-2所示:
图4-2 SNS模块实现截图
4.5.2 SNS模块实现界面第二部分
前面叙述道对于未登录的用户并没有加好友的权限。第一部分已经简单的说道为用户加好友提供了基础。当我们成功登录后,点击博客首页后再次跳转到主界面,重复第一部分操作便可轻松加好友。其次,在用户成功登录后,在个人主页中依然有好友推荐栏,这个好友推荐栏是和第一部分不同,是以用户点击量进行排行,博主可以轻松浏览到热门博客,这再次为了用户提供了加好友的便利。SNS模块实现界面第二部分如图4-3所示:
图4-3 SNS模块部分实现截图
4.5.3 注册用户登录模块
注册用户在登录之后可以进行上传照片,发表文章等活动。注册用户登录系统会调用LoginServlet类,通过用户名、密码等校对验证是否跳转至会员管理页面。普通用户第一次登录要订票必须在主页面点击注册。用户注册时页面将跳转之reg.jsp,若用户同意服务条款页面跳至reg2.jsp进行用户名和密码创建。注册用户登录模块如图4-4所示:
图4-4 注册用户登录模块截图
4.5.4添加文章模块
当已注册的用户成功登录到个人博客主页中后,点击主页管理便可进入文章管理模块,在这一模块中我们可以进行文章发表,也可以对文章进行编辑、删除操作。当用户进入添加文章模块时调用ArticleServlet类进行添加文章,然后跳转到ListShow浏览添加的文章。添加文章模块如图4-5所示:
图4-5文章发表截图
4.5.5留言模块
无论是已登录的用户,还是未登录的用户都可以对其他用户进行留言操作。只不过后者是以匿名者的身份进行留言。用户进入留言登录模块,调用WordServlet类进行留言,然后跳转到LeaveWord.jsp界面浏览留言。留言模块如图4-6所示:
图4-6 留言模块截图
第5章 系统测试
5.1 测试目的
系统测试是为了发现错误而执行程序的过程。它不仅是软件开发阶段的有机组成部分,而且在整个软件工程(即软件定义、设计和开发过程)中占据相当大的比重。系统测试是软件质量保证的关键环节,直接影响着软件
上一篇:
JSP旅游网站设计与实现
下一篇:
基于JSP邮件收发系统论文