帮助人们建立社会性网络的互联网应用服务。SNS的一种常用解释:全称Social Network Site,即"社交网站"或"社交网"。社会性网络(Social Networking)是指个人之间的关系网络,这种基于社会网络关系系统思想的网站就是社会性网络网站(SNS网站)。
1967年,哈佛大学的心理学教授Stanley Milgram(1933~1984)创立了六度分割理论,简单地说:"你和任何一个陌生人之间所间隔的人不会超过六个,也就是说,最多通过六个人你就能够认识任何一个陌生人。"按照六度分割理论,每个个体的社交圈都不断放大,最后成为一个大型网络。这是社会性网络(Social Networking)的早期理解。后来有人根据这种理论,创立了面向社会性网络的互联网服务,通过"熟人的熟人"来进行网络社交拓展,比如ArtComb,Friendster,Wallop,adoreme等。但"熟人的熟人",只是社交网络的一种方式,并非社交拓展的全部。因此,现在一般所谓的SNS,则其含义还远不及,这个层面。比如根据相同话题进行凝聚(如贴吧)、根据学习经历进行凝聚(如 Facebook)、根据共同爱好进行凝聚,都被纳入"SNS"的范畴。
1.4.2 JSP综述
JSP即Java Server Pages,是由Sun Microsystem公司于1996年6月推出的新技术,是基于Java Servlet以及整个Java体系的Web开发技术。JSP已经成为开发Web动态网页重要、快速和有效的工具,是全新的网络服务器编程环境。JSP充分利用了Java的强大功能,是一种优秀的服务器端技术。随着Java技术的日益成熟和流行,JSP在网络编程中也变得越来越重要。JSP基于强大的Java语言,具有极强的扩展能力,良好的缩收性,以及与平台无关的开发特性,成为构建动态网站的主流技术之一,JSP有着其他技术所不具备的优势。其优势在于:可以将内容的生成和显示进行分离、生成可重用的组件、采用标识简化页面开发。JSP能提供所有Servlet的功能。
1.4.3 Servlet概述
Servlet是Java编写的服务器端程序,是由服务器端执行和调用的Java类。Servlet是采用Java技术来实现CGI功能的一种技术,能够像CGI一样动态地扩展Web服务器的功能,并采用请求--响应模式提供Web服务。Servlet和CGI一样都是运行在Web服务器上,用来生成Web页面。Servlet的主要功能在于交互式地浏览和修改数据,生成动态Web内容。
Servlet工作流程:
(a)客户端发送请求信息至服务器。
(b)服务器将请求信息发送至Servlet。
(c)Servlet生成响应内容并将其传给Servlet。响应内容动态生成,通常取决于客户端的请求。
(d)服务器将响应信息传回服务端
1.4.4 JavaBean概述
JavaBean是Sun公司为了进入因特网、企业网以及万维网上进行分布式计算的组件结构入口。按照Sun公司的定义,JavaBean是一个可重复使用的软件部件。JavaBean体系结构是第一个全面地基于组件的标准模型之一,该组件是Java类,这些类遵循一个接口格式,以便于使方法命名、底层行为以及继承或实现的行为能够把类看做标准的JavaBean组件的方式进行构造。
在Java模型中,通过JavaBean可以无限扩充Java程序的功能,通过JavaBean的组合可以快速生成新的应用程序。JavaBean具有以下特点:
(a)可以实现代码的重复利用。
(b)易维护性、易使用性、易编写性。
(c)可以在Java的任何平台上工作,不需要重新编译。
(d)可以在内部网或者网络之间进行传输。
(e)可以以其它部件的模式进行工作。
JavaBean在JSP程序中常用来封装事务逻辑、数据库操作等,可以很好的实现业务逻辑和前台程序的分离,使得系统具有更好的健壮性和灵活性。
1.4.5 三层体系结构
三层体系结构图如图1-1所示:
图1-1 三层体系结构图
CGI,ASP,PHP等技术的出现,使得开发动态交互式的Web应用得以实现。用户通过浏览器向服务器发送请求,Web服务器接收客户端发送来的请求,对请求进行分析,如果请求是静态页面,那么就将所请求的页面发送到客户端;如果请求的是动态页面,那么就执行此动态页面,并将执行结果发送给客户端。动态页面中的脚本程序可以和数据库服务器进行交互。
Web服务器可以根据用户的请求动态更新页面上的信息,Web信息提供者可以通过改变数据库中的数据向用户提供最新信息,而不需要逐个更改页面。用户可以通过这些动态页面向数据库中输入信息,从而增强了用户和服务器之间的交互性。
1.5 本文的组织结构
第一章引言介绍了选题背景及意义。第二章需求分析介绍了SNS博客系统需求分析内容。第三章系统设计介绍了系统设计原则与功能设计。第四章系统详细设计与实现系统的工程结构与实现。第五章系统测试介绍了系统测试的方法与测试用例。
第2章 需求分析
2.1概述
SNS,简单地说就是社交网络,专指旨在帮助人们建立社会性网络的的互联网应用服务。据六度分割理论,一个人最多通过六个人就能够认识一个陌生人,通过建立一个社交性网络,将线下的朋友圈转变为人际网络。博客,是一种由个人管理,不定期更新文章的网站。人们通过博客发表自己的文章、感悟总结知识,交流心得。我会将博客与SNS功能相结合,以SNS理论为根基,以博客为辅,实现SNS博客系统。让人们通过博客发表文章等,认识新朋友,交流感悟。
本章采用软件工程方法对《基于JSP的SNS博客系统》进行了需求分析,包括系统目标、功能性需求、非功能性需求(主要指性能需求、环境需求及将来可能提出的需求)、数据需求。
2.2系统目标
本系统作为毕业项目提出,以提高个人能力。希望能通能过SNS博客系统软件设计开发,了解文档的相关标准和编写原则,训练并掌握各类软件的使用技巧,同时提高使用开发应用的能力。
SNS博客网站系统的目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、以扩充的、易维护的。具有良好的人机交互界面的SNS博客系统,为网络用户提供交流的网络平台。
通过SNS博客系统可以结交更多的朋友,表达更多的想法,它随时可以进行发布文章、上传照片、上传视频、进行留言、结交朋友等功能。
2.3可行性分析
可行性分析(Feasibility Analysis)也称为可行性研究,是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。为了确定开发具有可行性,对本系统主要进行了以下四个方面的分析。
(1) 经济可行性。经济可行性主要是对项目的经济效益进行评价。本系统对系统开发者来说并不需要太高的成本支出,只是对系统的管理者付出管理报酬即可,而且开发周期不需要太长,节省了人力、物力、财力资源,所以本系统在经济上是可行的。
(2) 技术上的可行性。技术上的可行性分析主要是分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。在软件方面,本系统采用的是JSP(Java Sever Pages)进行开发,而数据库系统采用的是SQL Server 2008。通过分析,在软、硬件方面现有工具与环境完全可以实现系统的开发,因此具有技术上的可行性。
(3) 时机可行性。时机可行性是分析系统开发时机是否成熟。目前越来越多的应用程序都已经是转向基于Web的开发,并且Internet已经广泛使用,因此系统的设计具有时机可行性。
(4) 管理上的可行性:主要是管理人员是否支持,现有的管理制
上一篇:
JSP旅游网站设计与实现
下一篇:
基于JSP邮件收发系统论文