基于JSP的交友网站一、选题的目的和意义Internet在今天已经渗透到人们日常学习、生活、工作的各个方面,越来越多的人每天都要在互联网上发布和获取信息。计算机应用技术的日益成熟进一步给互联网的无限空间。一方面使网站用户能够获取到更丰富的信息与服务,一方面却也给人们对于如何更方便地获取自己真正想要的内容带来了很大困扰,用户要求越来越高,希望网站能够尽量智能化地了解自己的需求,帮助个人得到适应性的信息和服务。网络只是个媒介,为大家提供了很好的交流平台,却创造了更亲密更深刻的人与人之间的关系,它让所有人都得到了受教育的机会,以及获得尊严的可能。在网络上,只要你努力,你永远有机会。网络与生俱来的虚拟性,使得网络交友有如“雾中花,水中月”,有人认为正因如此,它看起来才格外美。网络交友充分满足了人们的好奇与表现的心理,上网的人大都尝试过在聊天室或聊天软件中或博客和圈子中随意寻找网友的新奇。“网络交友为我们的生活开辟了新的空间,网络让我们超越了现实中交友的局限,让生活充满期待和变数。”热衷于网络交友的人常会将一些不习惯向身边朋友倾诉的内心问题,乐意地讲给从不谋面的网友或知心朋友听,通过倾诉使心理得到自我调节,因为网上朋友相隔远,不会有什么利益冲突,更不必担心袒露心灵会带来不良后果。通过QQ、博客和圈子、网上聊天室、论坛、网上交友社区、电子邮件、网络即时通迅软件、网上交友软件等网络利器,“网络交友”这种全新的交友方式,使“朋友遍天下”更为现实,唐朝诗人王勃的那句“海内存知已,天涯若比邻”的名句,也变得更具有现实意义。从文化的角度来看,网络所倡导的“平等、自由”精神,便网上交友前所未有的跳出世欲变得更加模糊起来。网络实实在在地开辟了我们崭新的交际渠道,拓宽了我们的交际范围,可以说网络交友颇具发展壮大的趋势。社会的日益开放和工作环境、形势的变化,人与人之间交往的载体也相应的发生了变化。交友网站的设计丰富了许多朋友的业余文化生活,给他们的生活带来更多的方便。促进全社会各项工作的全面进步。这样基于JSP技术,设计实现一个交友网站就迫在眉睫,它可以为网友提供网络交流和交友服务,使其具备网友注册,网友个人管理,网站会员管理的功能。该题目可以很好的帮助学生掌握JSP的基本技术,掌握网络数据库的基本操作,锻炼学生开发Web应用程序的能力,积累Web应用程序开发的经验。二、国内外研究动态随着WEB技术的发展,WEB内容从一些静态网页发展到内容丰富的动态网页。对于广大WEB开发人员来讲动态页面的生成是一个挑战。有许多的方法来试图解决这个问题,如plug-in技术及基于服务器端的APIs等方法,但存在的一个问题是这些方法是针对某个特定的web服务器,如Microsoft提供的ASP技术就只针对它的IIS及Personalweb服务器。目前用于生成动态网页较为流行的方法有CGI、PHP及JavaServerPage(JSP)技术等。其中:CGI通过访问其它应用程序来获取信息并返回给浏览器,CGI程序通常用C或PERL语言来开发;JSP则通过将JSP组件编译成JavaServlet在服务器端运行来实现动态内容。JavaServlet程序则具有JAVA程序的优点,可运行在任何平台之上,大多数WEB及应用服务器都支持JAVA及ServletAPI。JSP则没有大量的并行请求大大降低了其性能局限,每个程序装载一次,并驻留在服务器内存为以后请求服务。由于JavaServlet具有JAVA的所有优点,开发起来也相对容易,java简化了对异常的处理;它的面向对象特性使开发人员的协作成为一件简单的事。此外,JSP技术从如下几个方面加快动态网站开发:1.将静态页面的开发和动态内容的生成分开。JSP中通过使用HTML或XML标记来规划、设计WEB页的布局和风格;而用JSP标记来实现动态的内容,生成动态内容的部分被封装起来运行于服务器端;这样页面布局和风格可单独编辑与调试而不影响动态内容生成。2.组件的重用。多数JSP页通过重用无平台无关的组件—JavaBeans来完成复杂的要求。这些组件可在开发人员中重复使用。3.通过标记来简化页面开发。通过JSP提供了标记,开发人员可以很容易使用beans组件,设置和访问它们的属性。同时JSP也允许用户自定义标记,还可接受第三方开发的标记,从而可以方便使用第三方提供的功能组件。JavaBean是一种Java类(class),通过封装属性和方法成为具有某种功能或者处理某个业务的对象。JavaBean被组织成为package(数据包)以便进行管理,JSP网页吸引人的地方之一就是能结合JavaBean技术来扩充网页中程序的功能。网络数据库应用技术是目前进行信息管理的有效技术,它借助互联网的硬件资源以及软件资源,提供了一种开放式的信息加工处理方法,为人们提供了一种及时的、快捷的信息管理技术,因此网络数据库的应用越来越普遍。Oracle是世界领先的信息管理软件开发商,因其复杂的关系数据库产品而闻名。Oracle的目标定位于高端工作站以及作为服务器的小型计算机。Oracle的路线同Sun微系统公司类似,都提出了网络计算机的概念。与无压缩格式下存储数据相比,新的Oracle数据压缩技术能够确保以较小的开销节省三倍以上的磁盘存储空间。这一点比仅节省磁盘空间要具有更大的优势,因为它能够使企业节约更多的开支,以便有更多的资金来巩固自己的地位。三、主要研究内容和解决的问题3.1主要研究内容1)JSP技术及相关知识的学习。2)学习Eclipse的使用。3)Tomcat服务器的配置和调试。4)数据库技术,掌握数据库(Oracle,SQLServer等)的基本操作。5)Web应用程序分析与设计的方法。6)交友网站的设计。3.2交友网站系统的设计原则交友网站系统的建设以先进性和实用性为根本原则,既满足业务需求,又要考虑将来的发展需要。采用先进的J2EE技术,充分利用现有的软件资源和硬件资源并根据设计增加适当的硬件、软件、网络等资源,既要保证系统的先进性又充分考虑经济性。3.3系统设计过程3.3.1目标设计在线交友网站所要实现的功能如下:1)网友注册网友注册信息、网友登录验证2)网友个人管理个人资料管理、相片管理、交友请求管理、交友回复管理、留言管理3)网站会员管理管理员对注册会员管理3.3.2系统功能分析与设计在线交友共分为三个模块:网友注册模块、网友个人管理模块和网站会员管理模块。其中功能模块划分如图1所示:3.4数据库结构设计根据系统功能的设计要求和模块划分,数据库主要用于存储用户的注册信息、留言信息和好友信息。3.4.1数据库的需求分析网上交友主要包含一下数据项和数据结构。用户简单注册信息:user_ID、用户名、密码和注册日期等。用户详细的注册信息:Iar_ID、用户ID、姓名、生日、年龄、学历、职业、单位、邮政编码、电话、简历、性格和星座等。留言信息表:ID、留言者姓名、留言内容、留言时间、对方用户ID和留言者ID等。好友信息列表:ID、对方用户ID、申请好友者用户ID、申请者用户名、性别和地区等。3.4.2数据库的逻辑设计1,用户简单注册信息表user_reg如图2:网友注册模块网友登录验证网友注册信息个人资料管理注册会员管理网站会员管理模块相片管理交友请求管理留言管理网友个人管理模块交友回复管理名称数据类型大小小数位数可否为空默认值USER_IDNUMBER100是USER_NAMEVARCHAR218是PASSWORDVARCHAR218是DATEDATE是SysdateDATE1DATE是Sysdate2,用户详细注册信息表Iarchives如图3:名称数据类型大小小数位数可否为空默认值LAR_IDNUMBER100USER_IDNUMBER100是0NAMEVARCHAR250是SEXVARCHAR250是BRITHERDAYVARCHAR250是AGENUMBER100是0HOMEVARCHAR250是EDUCATIONVARCHAR250JOBVARCHAR250是COMPANYVARCHAR250是POSTCALCODEVARCHAR250是TELVARCHAR250是FRESUMEVARCHAR2210是NETNAMEVARCHAR250是HOMEPAGEVARCHAR250是EMAILVARCHAR250是NETCALLVARCHAR250是CHATROOMVARCHAR250是SPORTVARCHAR250是BOOKVARCHAR250是MUSICVARCHAR250是3,留言信息表Ieaveword如图4:名称数据类型大小小数位数可否为空默认值IDNUMBER100是NETNAMEVARCHAR210是WORDVARCHAR2255是DATEDATE是SysdateFOR_IDNUMBER100是0USER_IDNUMBER100是04,好友信息列表friends如图5:名称数据类型大小小数位数可否为空默认值IDNUMBER100FOR_IDNUMBER100是0USER_IDNUMBER100是0NETNAMEVARCHAR250是SEXVARCHAR250是HOMEVARCHAR250是四、论文工作计划与方案4.1实施方案:1)查阅相关资料,了解有关Java语言的网络数据库编程。2)了解各模块功能的实现,并对其详加分析。3)掌握以网页的形式显示数据库中所查相关信息。4)系统的实现与程序的编写。5)实验,并根据实验结果得出结论。4.2主要的研究手段:1)研究JSP技术构造Internet数据库应用系统,由JSP建立的动态网页通过JDBC访问数据库,建立B/S数据库结构。使用JSP页面作为服务器端应用程序处理客户端数据以及返回客户端结果。2)研究ORACLE数据库的构建,表的创建,语句的编写等。3)研究Java程序的编写,系统实现对交友信息的管理,修改等功能。4.3实现系统的大致流程如下:4.4计划:首先学习和熟悉相关技术(JSP,Java,数据库等)。其次网站结构设计、数据库结构设计、详细设计最后,撰写论文需求分析系统概要设计系统详细设计程序设计编码系统测试系统集成程序集成程序测试