文档库 最新最全的文档下载
当前位置:文档库 › 在线交友系统毕业论文

在线交友系统毕业论文

1 引言

在科技不断发展的今天,利用计算机进行现代化通讯已经成为身边必不可少的工具。身处在一个知识日新月异、时刻充满挑战的时代,科技飞速发展、知识不断创新的社会。所以利用新的交友方式增进同学间的友谊,加深朋友之间的了解是时代所要求的。

随着时代的进步,网络技术的发展,人们越来越多的事情都在网上解决,出线了宅男宅女,与周围人的交流沟通变得越来越少。朋友交际圈也越来越小,而交友网站的出现则提供了一个很方便的交友的平台,有利于人们之间的沟通交流,交际圈的扩大,同时加强沟通交流有利于了解不同地方的风土人情,风俗习惯,加强了解。减少不同习俗文化之间的摩擦,有利于不同地域人们的和谐相处。

网络交友较之其它交友方式更加经济,安全,健康。现在的上网条件非常的便利,上网费用也极其低廉,无须耗费大笔的资金去请朋友们吃喝玩乐以增加感情,友情,恋情。网上交友因其可以异地开展文字,音频,视频聊天,无须去面对面的处在一起,这样就减少了部分人士犯罪的几率。网络交友因其所进行的活动都是通过网络进行,很大程度减少了网络之外的交友开销,进而减少了对地球的污染与浪费,因此是种健康的交友方式。

把互联网作为交友的途径与工具,是互联网的基本应用之一。由于用互联网交友既轻松自由,又方便快捷,更有着不受地域限制的优势,所以各种交友网站应运而生。

互联网的迅速发展,使中国网上交友市场在不断壮大。到2008年末,我国网络交友网站已超过1000家,并有16家网站获得了近1亿美元的风投资金。但随着竞争的激烈,收费与流量之间的矛盾正逐渐突出。免费服务还需不需要坚持下去?还能维持多久?已成为所有交友网站都要直面的经营问题。

据某市场咨询公司研究表明,中国网上交友市场近几年发展比较迅猛,使用各种网上交友服务的网民由2005年的4640万人上升至2008年的11160万人,年增长率为34%。使用各种网上交友服务的网民所占互联网民用户的比例由2005年的42%上升至2008年的60%。而在市场方面,2004年底网上交友市场规模达到1.27亿元,其中网上休闲交友市场规模为9000万元,网上婚恋交友市场规模为3700万元,网上商务交友暂时没有收入。该市场咨询公司预计,随着互联网用户的快速发展和成熟,网上交友市场规模还将进一步增长,于2008年到达9.91亿元,其中网上婚恋交友市场规模为6.53亿元,

网上休闲交友市场规模为3.2亿元,网上商务交友市场规模为1620万元。整个网上交友市场规模年均年增长率达71.7%。

在市场动作上,有关网络交友融资和战略合作的消息不断传出。其中中国最大的职业人士门户网站中华网与欧洲最大的婚恋交友网站蜜糖网正式结成战略合作伙伴,在中国市场提供领先的网络交友服务。而著名国际风险投资机构软银亚洲也斥资上千万美元注入浩天集团“交友旗舰”。据悉在中国,目前期待靠交友服务赚钱的网站已经有近1000家。

有关专家认为,中国网上交友市场竞争会越来越激烈。目前几家经营时间较长的网站运营商,如中国交友中心、亚洲交友中心、e友网等,具有一定的运营经验和行业影响力。但是由于社会习俗、经济条件、技术形势和支付体系等因素的制约,市场还不尽如人意。2006年该市场的进入者主要是国际网上交友运营商和传统婚介的网上机构。前者有丰富的国际运营经验和雄厚的财力可为前期的运营打基础,劣势是受到中国政策法规的制约,以及对市场人文环境的不熟悉。后者由于线下的运营基础,拥有一大批优质客户和完整的服务经验,但是对网上运营往往定位不明确,另外受地域性局限较多。总体而言,网上交友市场进入壁垒较高,竞争激烈程度较高,先进入者优势比较明显,新进入者须有比较雄厚的财力作为前期推广费用。

另外风险投资的热潮过后,婚恋网站不得不直面运营难题。据了解,交友网站的收入来源主要是来自会员费和网络广告费。但目前大部分网站的状况是,网络广告业务不足以支撑网站开支,会员收费制更是难以推行。有关专家指出,虽然俗话说“天下没有免费的午餐”,可在中国,网民们有更愿意享受免费互联网服务的习惯,这使得大部分婚恋网站和网络购物、电子邮箱、博客等,仍采取免费会员策略来吸引用户、聚拢人气。不收费的时候,人气很旺,一旦收费,人气必定有所影响。这样的两难境地,已成为网络交友网站必须直面的问题。

与国内刚刚起步的婚恋网站相比,国外的婚恋网站发展相对要成熟许多。国外婚恋网站的发展比国内领先5年左右的时间,市场已经相对成熟。在1996-1997年间,美国最大的“搜索制”婚恋网站https://www.wendangku.net/doc/c118116998.html,的付费会员已经达到100万。2000年,美国第一家“推荐制”的婚恋网站e Harmony诞生。2004年12月份,e Harmony从风险投资商处成功融资1.1亿美元,成为2004年全球互联网数额最高的风险投资。而在同一年,该网站收入即达到7000万美元,是同年中国网上婚恋交友市场规模的15倍以上,注册

用户达700万,其中付费用户比例占20%,每月会员费为49.95美元。在美国,2005年婚恋网站的人均消费达67美元,整个市场的金额高达5亿美元。网络交友的注册用户为5000万人。而法国的https://www.wendangku.net/doc/c118116998.html,在2005年成功上市,成为全球第一家上市的婚恋网站。

虽然运营问题依然困惑着中国市场,但由于国外企业成功上市,并有着比较成熟的模式,再加上中国婚恋交友市场的诱惑,仍然有境外企业不断进入中国市场,并采用直接并购或者注资的方式。他们期待网络交友市场成为第二个网络招聘行业。

网站的发展趋势众说纷纭,无论是现在能够想象得到的或是没有想象到的,都有可能成为互联网明天的现实。总之,网络会越来越贴近人们的生活,互联网的应用会越来越广泛,互联经济会成为重要的产业,将大幅推动全球化经济的发展。互联经济现在仍处于萌芽阶段,才刚刚开始,未来的路还很长很长,互联网的发展需要每一个网络参与者共同努力,共同促进。

2 开发工具及技术简介

该课题结合开发的实际情况以及用户的需求,通过运用B/S结构模式、Java语言结合JSP网站开发技术、MyEclipse开发环境,MySQL数据库及SQL语句及其来完成该系统的数据库及应用程序的开发设计系统将会根据在线交友的需要,实现在线交友系统的登录与退出,用户注册信息、个人资料管理、相片管理、交友请求管理、交友回复管理、留言管理等。用Java编程语言实现程序的开发;采用MySQL实现数据库的设计;用SQL 语句实现数据库的操作;用JDBC技术连接数据库。下面将对系统的开发工具和主要技术作一个简单的介绍。

2.1 JSP技术

JSP(Java Server Pages)是由 Sun Microsystems 公司倡导许多公司参与一起建立的一种动态网页技术标准 JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(Tag),从而形成JSP文件(*.jsp) 用JSP开发的 Web 应用是跨平台的,既能在 Linux下运行,也能在其他操作系统上运行基于 JSP技术做成的网页还能通过 Tags和 Scriptlets 访问存在于服务端的资源的应用逻辑 JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于 Web 的应用程序的开发变得迅速和容易[1]。

在性能方面,目前在国内 PHP(Personal Home Page Hypertext preprocessor)与ASP 应用最为广泛。而 JSP(Java Server Page)由于是一种较新的技术,国内采用的较少。但在国外,JSP 已经是比较流行的一种技术,尤其是电子商务类的网站,多采用JSP。三者中, JSP 应该是未来发展的趋势。有人做过试验,对这三种语言分别做循环性能测试及存取Oracle 数据库测试。在循环性能测试中,JSP 只用了令人吃惊的四秒钟就结束了 20000*20000 的循环。而 ASP、PHP 测试的是 2000*2000 循环(少一个数量级),却分别用了 63 秒和 84 秒。数据库测试中,三者分别对 Oracle8 进行 1000 次Insert,Update, Select 和 Delete: JSP 需要 13 秒,PHP 需要69 秒,ASP 则需要 73 秒。可见, JSP 在性能方面是非常优秀的[2]。

JSP/Servlet支持 HTTP请求/响应模型,以线程工作方式响应来自客户端浏览器的请求。对客户端的 Servlet请求,直接由 Servlet引擎处理 JSP将静态 HTML从动态内容中分出来。本系统利用JSP,Servlet各自特点,让 JSP程序着重于表示逻辑,

Servlet着重于业务逻辑。

使用 JSP技术,Web页面开发人员可以使用HTML或者 XML标记来设计和格式化最终页面。Sun推出的JSP是一种执行于服务器端的动态网页开发技术,它基于Java技术[3]。生成动态内容的程序代码封装在 JavaBean组件、EJB组件或JSP脚本段中。在最终页面中使用JSP标记或脚本将 JavaBean组件中的动态内容引入。这样,可以有效地将内容生成和页面显示分离,使页面的设计人员和编程人员可以同步进行工作,也可以保护程序的关键代码。

可重用的、跨平台的JavaBeans和EJB( Enterp rise JavaBeans)组件,为JSP 程序的开发提供了方便。JSP页面调用bean,可有效地分离静态工作部分和动态工作部分[4]。

JSP全称为 Java Server Pages是 Sun公导、多家公司参与, 1999年提出的一种 We技术标准。它主要的编程脚本为 Java语言还支持 JavaBeans/Servlet等技术,利用这些可以建立安全、跨平台的 Web应用程序。当JSP第一次被请求时,JSP页面转换成Servlet,然后被编译成.class文件,以后(除非页面有改动或 Web服务器被重新启动)再有客户请求该 JSP页面时,JSP页面不被重新编译,而是直接执行已编译好的.class文件,因此执行效率高。

JSP 在技术结构上有着其他语言如 PHP、ASP 所没有的优势。JSP 可以通过JavaBean 等技术实现内容的产生和显示相分离,并且 JSP 可以使用 JavaBeans 或者EJB 来执行应用程序所要求的更为复杂的处理,进而完成企业级的分布式的大型应用。因此,不少国外的大型企业系统和商务系统都使用 JSP技术。作为采用 Java 技术家族的一部分,JSP 技术也能够支持高度复杂的基于 Web 的应用,对于脚本语言来讲,JSP 还是拥有相当大的优势的,虽然其配置和部署相对其他脚本语言来说要复杂一些,但对于跨平台的中大型网站系统来讲,基于 Java技术的 JSP,结合 JavaBean 和 EJB 几乎成为唯一的选择[5]。

2.2 MySQL数据库

MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。在2008年1月16号被Sun公司收购。而2009年,SUN又被Oracle收购。对于MySQL的前途,没有任何人抱乐观的态度。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站

为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

与其他的大型数据库例如Oracle、DB2、SQL Server等相比,MySQL自有它的不足之处,如规模小、功能有限(MySQL Cluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。

目前Internet上流行的网站构架方式是LAMP(Linux+Apache+MySQL+PHP),即使用Linux作为操作系统,Apache作为Web服务器,MySQL作为数据库,PHP作为服务器端脚本解释器。由于这四个软件都是免费或开放源码软件(FLOSS),因此使用这种方式不用花一分钱(除开人工成本)就可以建立起一个稳定、免费的网站系统。

索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针。索引不是万能的,索引可以加快数据检索操作,但会使数据修改操作变慢。每修改数据记录,索引就必须刷新一次。为了在某种程序上弥补这一缺陷,许多SQL命令都有一个DELAY_KEY_WRITE项。这个选项的作用是暂时制止MySQL在该命令每插入一条新记录和每修改一条现有之后立刻对索引进行刷新,对索引的刷新将等到全部记录插入/修改完毕之后再进行。在需要把许多新记录插入某个数据表的场合,DELAY_KEY_WRITE选项的作用将非常明显。另外,索引还会在硬盘上占用相当大的空间。因此应该只为最经常查询和最经常排序的数据列建立索引。注意,如果某个数据列包含许多重复的内容,为它建立索引就没有太大的实际效果。从理论上讲,完全可以为数据表里的每个字段分别建一个索引,但MySQL把同一个数据表里的索引总数限制为16个。

与InnoDB数据表相比,在InnoDB数据表上,索引对InnoDB数据表的重要性要大得多。在InnoDB数据表上,索引不仅会在搜索数据记录时发挥作用,还是数据行级锁定机制的苊、基础。“数据行级锁定”的意思是指在事务操作的执行过程中锁定正在被处理的个别记录,不让其他用户进行访问。这种锁定将影响到(但不限于)SELECT、LOCKINSHAREMODE、SELECT、FORUPDATE命令以及INSERT、UPDATE和DELETE命令。出于效率方面的考虑,InnoDB数据表的数据行级锁定实际发生在它们的索引上,而不是数据表自身上。显然,数据行级锁定机制只有在有关的数据表有一个合适的索引可供锁定的时候才能发挥效力。

如果WHERE子句的查询条件里有不等号(WHEREcoloum!=),MySQL将无法使用索引。类似地,如果WHERE子句的查询条件里使用了函数(WHEREDAY(column)=),MySQL也将无法使用索引。在JOIN操作中(需要从多个数据表提取数据时),MySQL只有在主键和外键的数据类型相同时才能使用索引。如果WHERE子句的查询条件里使用比较操作符LIKE和REGEXP,MySQL只有在搜索模板的第一个字符不是通配符的情况下才能使用索引。

在ORDERBY操作中,MySQL只有在排序条件不是一个查询条件表达式的情况下才使用索引。(虽然如此,在涉及多个数据表查询里,即使有索引可用,那些索引在加快ORDERBY方面也没什么作用)。如果某个数据列里包含许多重复的值,就算为它建立了索引也不会有很好的效果。比如说,如果某个数据列里包含的净是些诸如“0/1”或“Y/N”等值,就没有必要为它创建一个索引。

2.3 JDBC连接数据库技术

JDBC(Java Data Base Connectivity,Java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序,同时,JD BC也是个商标名。有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBC API,就不必为访问Sybase数据库专门写一个程序,为访问Oracle

数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBC API写一个程序就够了,它可向相应数据库发送SQL调用。同时,将Java 语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。

Java数据库连接体系结构是用于Java应用程序连接数据库的标准方法。JDBC对J ava程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODB C之间的桥接。JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。

Java 具有坚固、安全、易于使用、易于理解和可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。所需要的只是 Java应用程序与各种不同数据库之间进行对话的方法。而 JDBC 正是作为此种用途的机制。JDBC 扩展了 Java 的功能。例如,用 Java 和 JDBC API 可以发布含有 applet 的网页,而该 applet 使用的信息可能来自远程数据库。企业也可以用 JDBC 通过 Intranet 将所有职员连到一个或多个内部数据库中(即使这些职员所用的计算机有 Windows、 Macintosh 和UNIX 等各种不同的操作系统)。随着越来越多的程序员开始使用Java 编程语言,对从 Java 中便捷地访问数据库的要求也在日益增加。

MIS 管理员们都喜欢 Java 和 JDBC 的结合,因为它使信息传播变得容易和经济。企业可继续使用它们安装好的数据库,并能便捷地存取信息,即使这些信息是储存在不同数据库管理系统上。新程序的开发期很短。安装和版本控制将大为简化。程序员可只编写一遍应用程序或只更新一次,然后将它放到服务器上,随后任何人就都可得到最新版本的应用程序。对于商务上的销售信息服务,Java 和JDBC 可为外部客户提供获取信息更新的更好方法。

2.4 HTML技术

设计HTML语言的目的,是为了能把存放在一台电脑中的文本或图形,与另一台电脑中的文本或图形方便地联系在一起,形成有机的整体。人们不用考虑具体信息是在当前电脑里还是在网络上其它电脑里,只需使用鼠标在某一文档中点取一个图标,Intern et就会马上转到与此图标相关的内容上去。而这些信息可能存放在网络的另一台电脑中。一个完整的HTML文件由标题、段落、列表、表格、及嵌入的种对象所组成[6]。

另外,HTML是网络的通用语言,一种简单、通用的全置标记语言。也许你听说过许多可以编辑网页的软件,事实上你不需要用任何专门的软件来建立HTML页面,而只需一个文本编辑器或字处理器(如Office Word/记事本/写字板/Gedit等等)以及HTML 的工作常识。JavaScript是一种面向对象的描述语言,通常被嵌入HTML文档,它能做到响应浏览者的需求事件而不用通过网络回传资料[7]。

2.5 Tomcat服务器

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了

Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的 Tomcat标志改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。Tomcat 是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。这里的诀窍是,当配置正确时,Apache 为HTML 页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache 等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。

2.6 MyEclipse集成开发环境

MyEclipse,是一个十分优秀的用于开发Java, J2EE的Eclipse插件集合。有了基本的JDK工具包,就可以进行Java程序开发了。在实际编程时,还可以借助一些辅助工具来加快程序的设计[8]。MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开元产品的支持十分不错。

MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSP, CSS, Javas cript, SQL, Hibernate。

在结构上,MyEclipse的特征可以被分为7类:JavaEE模型,WEB开发工具,EJB 开发工具,应用程序服务器的连接器,JavaEE项目部署服务,数据库服务,MyEclipse 整合帮助。对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让在不影响其他模块

的情况下,对任一模块进行单独的扩展和升级。简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错,MyEclipse6.0以前版本需先安装Eclipse。MyEclipse6.0以后版本安装时不需安装Ecl ipse。

Genuitec发布了MyEclipse Enterprise Workbench 5.0,更智能、更快捷、更简单和更便宜的J2EE工具的新版本的诞生。它的价格对于个人和企业开发人员来说都是非常有吸引力的。这是J2EE IDE市场一个重量级的选手。通过增加UML双向建模工具、WYSIWYG的JSP/Strutsdesigner、可视化的Hibernate/ORM工具、Spring和Web servi ces支持,以及新的Oracle数据库开发,MyEclipse 5.0继续为业界提供全面的产品。

Genuitec 总裁Maher Masri 说,“今天,MyEclipse已经提供了意料之外的价值。其中的每个功能在市场上单独的价格都比MyEclipse要高。但是,承诺为顾客提供全面并且可以买得起的解决方案。按照这个传统,顾客将继续享受年度订购活动的好处,该活动提供了所有发布功能的入口以及伴随MyEclipse5.0一起的专业技术支持。”

MyEclipse 8.6 M1下载地址发布了,关注MyEclipse 8.6的朋友可以去MyEclipse 官方获取最新的MyEclipse 8.6 M1下载地址下载试用的说(需要特殊手段)。随着MyEc lipse 8.5的发布,很多MyEclipse都已经开始转型成MyEclipse 8.5工作了,MyEcli pse 8.5不但集成最新版本的Eclipse 3.5.2同时包含了大量当前最新版的开源框架的插件支持。当浏览MyEclipse官方网站的时候,会发现MyEclipse 8.6的第一个M版本-MyEclipse 8.6 M1下载地址已经发布了,作为目前最新版本的MyEclipse 8.6来说包含了不少吸引人的新特性,尤其是在对主流Java框架的支持都更新了不少,由于目前M yEclipse 8.6还只是M1版本,因此作为开发版本使用估计不太可能(当然如果喜欢试用新的工具,装个来体验一下应该是没问题),相信在MyEclipse 8.6正式版下载地址发布的时候会有更新的开源框架版本的支持。

3 需求分析

3.1 项目背景

随着时代的进步,网络技术的发展,人们越来越多的事情都在网上解决,出现了宅男宅女,与周围人的交流沟通变得越来越少。朋友交际圈也越来越小,而交友网站的出现则为提供了一个很方便的交友的平台,有利于人们之间的沟通交流,交际圈的扩大,同时加强沟通交流有利于了解不同地方的风土人情,风俗习惯,加强了解。减少不同习俗文化之间的摩擦,有利于不同地域人们的和谐相处。

网络交友较之其它交友方式更加经济,安全,健康。现在的上网条件非常的便利,上网费用也极其低廉,无须耗费大笔的资金去请朋友们吃喝玩乐以增加感情,友情,恋情。网上交友因其可以异地开展文字,音频,视频聊天,无须去面对面的处在一起,这样就减少了部分人士犯罪的几率。网络交友因其所进行的活动都是通过网络进行,很大程度减少了网络之外的交友开销,进而减少了对地球的污染与浪费,因此是种健康的交友方式。

据某市场咨询公司研究表明,中国网上交友市场近几年发展比较迅猛,使用各种网上交友服务的网民由2005年的4640万人上升至2008年的11160万人,年增长率为34%。使用各种网上交友服务的网民所占互联网民用户的比例由2005年的42%上升至2008年的60%。而在市场方面,2004年底网上交友市场规模达到1.27亿元,其中网上休闲交友市场规模为9000万元,网上婚恋交友市场规模为3700万元,网上商务交友暂时没有收入。该市场咨询公司预计,随着互联网用户的快速发展和成熟,网上交友市场规模还将进一步增长,于2008年到达9.91亿元,其中网上婚恋交友市场规模为6.53亿元,网上休闲交友市场规模为3.2亿元,网上商务交友市场规模为1620万元。整个网上交友市场规模年均年增长率达71.7%。

在市场动作上,有关网络交友融资和战略合作的消息不断传出。其中中国最大的职业人士门户网站中华网与欧洲最大的婚恋交友网站蜜糖网正式结成战略合作伙伴,在中国市场提供领先的网络交友服务。而著名国际风险投资机构软银亚洲也斥资上千万美元注入浩天集团“交友旗舰”。据悉在中国,目前期待靠交友服务赚钱的网站已经有近10 00家。

3.2 可行性分析

可行性研究(Feasibility Study)是通过对项目的主要内容和配套条件,如市场需求、资源供应、建设规模、工艺路线、设备选型、环境影响、资金筹措、盈利能力等,从技术、经济、工程等方面进行调查研究和分析比较,并对项目建成以后可能取得的财务、经济效益及社会环境影响进行预测,从而提出该项目是否值得投资和如何进行建设的咨询意见,为项目决策提供依据的一种综合性的系统分析方法。可行性研究应具有预见性、公正性、可靠性、科学性的特点。

可行性分析的主要内容有:投资必要性、经济可行性、技术可行性、财务可行性、组织可行性、社会可行性、风险因素及对策等。下面主要从经济可行性,技术可行性,功能可行性三方面进行分析。

本系统的开发所需人员较少,而且开发平台用到的部分开发软件是免费的,相对其他开发技术和开发平台,这就为开发商减少了一笔不小的开支。还有,本系统在互联网时代的优势是显而易见的,可以为开发商提高工作效率,带来很大的利润。对于本系统来说,维护所需要的精力和费用不会很多。对于用户来说,本系统所具有的功能,已基本能满足用户的需要了。所以,本系统在维护方面所需要的费用也是很低的。而且能节约人力。因此经济代价不大,经济效益可行。技术可行性研究是根据现有的和准备充实的设备条件与技术力量来分析系统在技术上实现的可能性,弄清现有技术条件能否保证顺利地完成系统的开发工作。在技术可行性研究过程中,主要是采集系统性能、可靠性、可维护性和可生产性等方面的信息,分析实现系统功能所需要的各种设备、技术、方法和过程;分析项目开发在技术方面可能负担的风险,以及技术问题对开发成本的影响等。可以从三个方面来考虑本系统技术上的可行性。

页面开发工具上采用Myeclipse,开发语言采用jsp,它们的功能强大,完全能够实现此用户信息管理系统的开发。还要考虑现有的计算机硬件和软件能否支持被研究开发的系统。因为本系统的数据不是特别复杂,数据传输和数据存储上对数据库的要求不是很高。而Mysql数据库在现代使用非常普遍,对于一个企业来说使用Mysql不但能增强数据的安全性,也能适用技术的发展方向。本系统在这方面的技术是完全可行的。要考虑在规定的平台之上,利用现有技术能否实现和研究开发的系统。为本系统完全符合上述所提出的要求,能够将本系统的各项功能清晰的展现出来,并加以实现。因此,本系统在这方面的技术是完全可行的。

交友网站属于社会网络服务。一定程度上,涉及到社会学、心理学等方面。交友网站应该满足人们的高效交友的需求。因此,交友网站的搜索引擎,应该是最重要的部分。

也许可以从如下几个方面重点着手。

a) 照片管理功能。这是重中之重。无论如何强调都不过分。上传,管理,浏览等等。功能越丰富越准确越好,速度越快越好。

b) 搜索的命中率。用户可以定义各种关键字作为Tag(标签Label)。可以加入兴趣组、感兴趣的话题等。也可以自定义一些问题,让潜在的追求者回答。这方面有大量的潜力可以挖掘。

3.3 系统功能图

根据在线交友系统的需求,在汇总分析后,对系统各功能进行模块划分,并制作出系统的主要功能图,如图3.1所示。

图3.1 系统功能图

4 数据库设计

4.1 数据库的结构分析

根据系统功能设计要求和模块划分,本站的数据库主要存储用户注册信息、留言信息、好友信息、照片信息、管理员信息、申请好友者信息、交友请求回复信息等。

网上交友主要包含以下数据项和数据结构。

a) 用户简单注册信息:user_id(自动编号)、用户名、密码和注册日期。

b) 用户详细注册信息:lar_id(自动编号)、用户ID、姓名、生日、年龄、学历、职业、单位、邮政编码、电话、简历、性格和星座等。

c) 留言信息表:id(自动编号),留言者姓名、留言内容、留言时间、对方用户id 和留言者id。

d) 好友信息表:id(自动编号)、对方用户id、申请好友者用户id、申请好友者用户名、性别和地区。

e) 照片信息表:id、fid(自动编号)、图片文件夹、图片存储方式等。

f) 交友请求回复信息表:id(自动编号)、对方用户id、申请好友者用户id、申请好友者用户名、网名、性别和地区、日期。

g) 申请好友信息表:id(自动编号)、对方用户id、申请好友者用户id、网名、性别、年龄等。

h) 管理员信息表:管理员用户名、密码。

4.2 数据库表设计

根据需求分析中对系统功能的各方面做出的定义,系统设计了相应的数据库表。进行开发时,在MySQL数据库中应该严格按照此结构进行表的定义,而且一定要注意在设计的过程中,对各字段大小所做的限制。

根据功能模块的设计,以及规范化的设计要求,该系统共涉及到8个表:

a)用户简单注册信息表rser_reg,用来保存用户注册信息,如表4.1所示。

表4.1 用户简单注册表(user_reg)

编号字段名称数据类型说明

1 user_id Bigint(19) 用户编号,主键

2 user_name varchar(18) 用户名

3 password Varchar(18) 用户密码

4 date timestamp 注册日期

b)用户详细注册表larchives,用来记录用户的详细信息,如表4.2所示。

表4.2 用户详细注册表(larchives)

编号字段名称数据类型说明

1 lar_id bigint(19) 自动编号,主键

2 user_id bigint(19) 用户编号

3 name varchar(50) 用户姓名

4 birthday varchar(50) 用户生日

5 sex varchar(50) 用户性别

6 age varchar(50) 用户年龄

7 home varchar(50) 用户籍贯

8 education varchar(50) 用户学历

9 job varchar(50) 用户职业

10 company varchar(50) 工作单位

11 postcalcode varchar(50) 邮政编码

12 tel varchar(50) 联系电话

13 fresume varchar(50) 个人简历

14 netname varchar(50) 用户网名

15 homepage varchar(50) 个人主页

16 email varchar(50) 电子邮件

17 netcall varchar(50) 网络联系方式

18 chatroom varchar(50) 聊天室

续表4.2 用户详细注册表(larchives)

编号字段标识数据类型说明

19 adage varchar(50) 格言

20 sport varchar(50) 喜欢的运动

21 interest varchar(50) 爱好或特长

22 people varchar(50) 喜欢的名人

23 charac varchar(50) 性格

24 book varchar(50) 喜欢的书籍

25 music varchar(50) 喜欢的音乐

26 ip varchar(50) 注册ip地址

27 renqi varchar(50) 人气

28 click bigint(19) 被查看次数

29 photonum bigint(19) 照片数量

30 date timestamp 时间变量

31 date1 date 日期变量

c)留言信息表leaveword,存贮留言信息,如表4.3所示。

表4.3 留言信息表(leaveword)

编号字段标识数据类型说明

1 id Bigint(19) 消息编码,主键

2 netname Varchar(10) 网名

3 word Varchar(255) 留言内容

4 date timestamp 留言时间

5 for_id bigint 留言用户编号

6 user_id bigint 用户编号

d)好友信息列表friend,用来保存好友信息,如表4.4所示。

表4.4 好友信息列表(friend)

编号字段标识数据类型说明

1 id Bigint(19) 好友编码,主键

2 netname Varchar(50) 网名

3 for_id Bigint(19) 好友编号

4 user_id Bigint(19) 用户编号

5 sex Varchar(50) 好友性别

6 home Varchar(50) 好友籍贯

e)照片信息列表friendimg,用来保存用户照片信息,如表4.5所示。

表4.5 照片信息列表(friendimg)

编号字段标识数据类型说明

1 fid Bigint(19) 文件编号,主键

2 id Bigint(19) 编号

3 fimgae blob 存储图片

f) 交友请求回复信息列表back,用来保存已发送的交友请求信息,如表4.6所示。

表4.6 交友请求回复信息列表(back)

编号字段标识数据类型说明

1 id Bigint(19) 编号

2 user_id Bigint(19) 用户编号

3 for_id Bigint(19) 被回复编号

4 name Varchar(20) 好友名子

5 sex Varchar(10) 性别

6 netname Varchar(10) 网号

7 home Varchar(10) 籍贯

8 result Varchar(20) 结果

9 back_date timestamp 回复日期

g)管理员信息表admin,如表4.7所示。

表4.7 管理员信息表(admin)

编号字段标识数据类型说明

1 admin_name Varchar(20) 管理员用户名

2 admin_password Varchar(20) 管理员密码

h)好友申请信息表apply,如表4.8所示。

表4.8 好友申请信息表(apply)

编号字段标识数据类型说明

1 id Bigint(19) 编号

2 user_id Bigint(19) 用户编号

3 for_id Bigint(19) 申请编号

4 user_name Varchar(10) 用户名子

5 user_sex Varchar(10) 用户性别

6 user_netname Varchar(10) 用户网号

7 user_age Varchar(10) 用户年龄

8 user_home Varchar(10) 用户籍贯

9 apply_date timestamp 申请日期

5 系统设计

根据在上述过程产生的文档,接下来将要在详细设计阶段对各功能模块提供具体的设计方案,以便在之后的编码阶段能够加快效率、提高质量。

5.1 网友注册与登录模块

网友注册与登录模块包含以下子模块:

a) 会员注册:包含页面reg.jsp, regsubmit.jsp, regok.jsp, register.jsp, ladd.jsp, read.jsp。用户要使用系统首先要进行会员注册,简单注册的流程图如下:

图5.1 会员注册流程图

b) 用户登录验证:index.jsp, login.jsp, your.jsp。用户注册完后,要进入登

录系统才能使用系统的各种功能,用登录的流程图如下所示:

图5.2 用户登录流程图

各页面的关系如图5.3所示:

5.2 用户个人管理模块

用户个人管理模块包含以下模块:资料管理,相片管理,交友请求回复管理和留言管理。

a) 资料管理子模块包含以下页面:edit.jsp, eadd.jsp, delhy.jsp。此模块能完

相关文档
相关文档 最新文档