




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
低价出售百度文库财富值帐号 实力见证一切 联系旺旺 whx0910专业销售爱问共享资料积分帐号 价格公道合理 联系QQ1747-88632湖南交通工程职业技术学院 毕业设计(论文)( 2008 届)题 目: * 系(部): 计算机系 专业班级: 计应高0601 姓 名: * 指导老师: * 2010 年 6 月 20 日目 录第一章 概述11.1 开发背景11.2 开发环境 2第二章 系统分析72.1 可行性分析72.2 需求分析 72.3 系统用例图82.4 系统主要类8第三章 数据库分析93.1 数据库的选择93.2 数据库的访问方法93.2 数据库的建立11第四章 功能模块设计124.1登陆子系统124.2注册子系统134.3讨论子系统144.4 发布新主题子系统144.5 回复主题子系统15第五章 系统实现165.1 登陆/注册:模块165.2 注册新用户:模块235.3发布/回复主题:模块265.4 C/S和B/S模式的区别325.5 MVC+ADO模式33参考文献34致谢3514 / 21湖南交通工程职业技术学院 系毕业设计任务书设计题目学生姓名专业班级联系电话电子信箱/QQ指导教师教研室联系电话电子信箱/QQ设计内容和目标设计要求进度安排教研室审核 室主任签名: 年 月 日 说明:此表一式两份,指导教师和学生各留存一份湖南交通工程职业技术学院 系毕业论文开题报告论文题目学生姓名专业班级联系电话电子信箱/QQ指导教师教研室联系电话电子信箱/QQ选题背景、意义研 究内 容和方法 计 划进 度(根据系部毕业设计实施方案,结合本选题做出合理时间安排)指导老师意见 (对本选题的深度、广度及工作量的意见和对设计结果的预测) 指导教师签名: 年 月 日教研室意见 室主任签名: 年 月 日 说明:此表一式两份,指导教师和学生各留存一份中 文 摘 要随着计算机技术的不断发展与应用,Internet的高速发展,网上论坛已成为人们交流的主要场所。它开辟了一块“公共”空间供所有用户读取和讨论其中信息,具有形式灵活,应用方便适用性非常强等特点.一方面它把人们想要的发表的信息以一种文件的形式展现出来,需要者还可以与发表者以一种交流研讨的方式,进行交流,拉近了人们的关系,使有用的信息得以快速的传达。Java是Sun公司推出的一种编程语言。它是一种通过解释方式来执行的语言,语法规则和C+类似。同时,Java也是一种跨平台的程序设计语言。Java非常适合于企业网络和Internet环境,现在已成为Internet中最受欢迎、最有影响的编程语言之一。Java摈弃了C+中各种弊大于利的功能和许多很少用到的功能。 Java可以运行与任何微处理器,用Java开发的程序可以在网络上传输,并运行于任何客户机上。本系统基于C/S模式设计,利用JAVA作为程序开发语言,SQL SEVER2000作为数据库开发工具,实现具体的论坛系统操作。从而创建一个更为稳定,高效,安全的运行环境。本文简介了本系统的项目背景了意义,阐述了JSP的基础知识和技术、数据库基础知识。并描述了本系统的需求分析、数据库设计、架构设计、功能模块设计和系统主界面设计、系统编码和系统的实现过程。关键词:论坛 JAVA C/S 数据库 SQL SERVER第一章 概 述1.1 开发背景当今世界科学技术飞速发展,尤其以通信、计算机、网络为代表的互联网技术更是日新月异。 由于计算机互联网在政治、经济、生活等各个领域的发展、运用以及网络的迅速普及和全社会对网络的依赖程度,计算机网络已经成为国家的经济基础和命脉,成为社会和经济发展强大动力,其地位越来越重要。目前,大多数论坛系统都是基于B/S模式,由于B/S架构管理软件只安装在服务器端(Server)上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器(Server)端完全通过WWW浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。但是,应用服务器运行数据负荷较重,一旦发生服务器“崩溃”等问题,后果不堪设想。因此,本系统采用C/S结构。C/S(Client/Server)结构,即大家熟知的客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。由于客户端实现与服务器的直接相连,没有中间环节,因此响应速度快。同时采用C/S架构,要选择适当的数据库平台来实现数据库数据的真正“统一”,使分布于两地的数据同步完全交由数据库系统去管理,但逻辑上两地的操作者要直接访问同一个数据库才能有效实现,如果需要建立“实时”的数据同步,就必须在两地间建立实时的通讯连接,保持两地的数据库服务器在线运行,网络管理工作人员既要对服务器维护管理,又要对客户端维护和管理,这需要高昂的投资和复杂的技术支持,维护成本很高,维护任务量大。 因此本系统主要适用于中小企业,学校,社区等局域网范围内使用,以便于网络维护与管理。1.2 开发环境1.2.1 SQL ServerSQL Server是基于服务器端的中型的数据库,可以适合大容量数据的应用,在功能上管理上也要比Access要强得多。在处理海量数据的效率,后台开发的灵活性,可扩展性等方面强大。因为现在数据库都使用标准的SQL语言对数据库进行管理,所以如果是标准SQL语言,两者基本上都可以通用的。非过程化语言、统一的语言、是所有关系数据库的公共语言。SQL Server还有更多的扩展,可以用存储过程,数据库大小无极限限制。1.2.2 JAVA虚拟机(1.5) 什么是Java虚拟机Java虚拟机是一个想象中的机器,在实际的计算机上通过软件模拟来实现。Java虚拟机有自己想象中的硬件,如处理器、堆栈、寄存器等,还具有相应的指令系统。Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。一般的高级语言如果要在不同的平台上运行, 至少需要编译成不同的目标代码。而引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译.。Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。 Java虚拟机体系结构Java虚拟机由五个部分组成:一组指令集、一组寄存器、一个栈、一个无用单元收集堆(Garbage-collected-heap)、一个方法区域。这五部分是Java虚拟机的逻辑成份,不依赖任何实现技术或组织方式,但它们的功能必须在真实机器上以某种方式实现。1、Java指令集Java虚拟机支持大约248个字节码。每个字节码执行一种基本C运算,例如,把一个整数加到寄存器,子程序转移等。Java指令集相当于Java程序的汇编语言。Java指令集中的指令包含一个单字节的操作符,用于指定要执行的操作,还有0个或多个操作数,提供操作所需的参数或数据。许多指令没有操作数,仅由一个单字节的操作符构成。虚拟机的内层循环的执行过程如下:do 取一个操作符字节; 根据操作符的值执行一个动作; while(程序未结束)由于指令系统的简单性,使得虚拟机执行的过程十分简单,从而有利于提高执行的效率。指令中操作数的数量和大小是由操作符决定的。如果操作数比一个字节大,那么它存储的顺序是高位字节优先。字节码指令流一般只是字节对齐的。指令tableswitch和lookup是例外,在这两条指令内部 要求强制的4字节边界对齐。2、寄存器Java虚拟机的寄存器用于保存机器的运行状态,与微处理器中的某些专用寄存器类似。Java虚拟机的寄存器有四种:(1)pc:Java程序计数器;(2)optop:指向操作数栈顶端的指针;(3)frame:指向当前执行方法的执行环境的指针;(4)vars:指向当前执行方法的局部变量区第一个变量的指针。Java虚拟机是栈式的,它不定义或使用寄存器来传递或接受参数,其目的是为了保证指令集的简洁性和实现时的高效性(特别是对于寄存器数目不多的处理器)。所有寄存器都是32位的。3、栈Java虚拟机的栈有三个区域:局部变量区、运行环境区、操作数区。(1)局部变量区每个Java方法使用一个固定大小的局部变量集。它们按照与vars寄存器的字偏移量来寻址。局部变量都是32位的。长整数和双精度浮点数占据了两个局部变量的空间,却按照第一个局部变量的索引来寻址,虚拟机提供了把局部变量中的值装载到操作数栈的指令,也提供把操作数栈中的值写入局部变量的令。(2)运行环境区在运行环境中包含的信息用于动态链接,正常的方法返回以及异常传播。动态链接运行环境包括对指向当前类和当前方法的解释器符号表的指针,用于支持方法代码的动态链接。方法的class文件代码在引用要调用的方法和要访问的变量时使用符号。动态链接把符号形式的方法调用翻译成实际方法调用,装载必要的类以解释还没有定义的符号,并把变量访问翻译成与这些变量运行时的存储结构相应的偏移地址。动态链接方法和变量使得方法中使用的其它类的变化不会影响到本程序的代码。正常的方法返回如果当前方法正常地结束了,在执行了一条具有正确类型的返回指令时,调用的方法会得到一个返回值。执行环境在正常返回的情况下用于恢复调用者的寄存器,并把调用者的程序计数器增加一个恰当的数值,以跳过已执行过的方法调用指令,然后在调用者的执行环境中继续执行下去。异常和错误传播异常情况在Java中被称作Error(错误)或Exception(异常),是Throwable类的子类,在程序中的原因是:a.动态链接错,如无法找到所需的class文件。b.运行时错,如对一个空指针的引用程序使用throw语句。当异常发生时,Java虚拟机采取如下措施:检查与当前方法相联系的catch子句表。每个catch子句包含其有效指令范围,能够处理的异常类型,以及处理异常的代码块地址。与异常相匹配的catch子句应该符合下面的条件:造成异常的指令在其指令范围之内,发生的异常类型是其能处理的异常类型的子类型。如果找到了匹配的catch子句,那么系统转移到指定的异常处理块处执行;如果没有找到异常处理块,重复寻找匹配的catch子句的过程,直到当前方法的所有嵌套的catch子句都被检查过。由于虚拟机从第一个匹配的catch子句处继续执行,所以catch子句表中的顺序是很重要的。因为Java代码是结构化的,因此总可以把某个方法的所有的异常处理器都按序排列到一个表中,对任意可能的程序计数器的值,都可以用线性的顺序找到合适的异常处理块,以处理在该程序计数器值下发生的异常情况。如果找不到匹配的catch子句,那么当前方法得到一个未截获异常的结果并返回到当前方法的调用者,好像异常刚刚在其调用者中发生一样。如果在调用者中仍然没有找到相应的异常处理块,那么这种错误传播将被继续下去。如果错误被传播到最顶层,那么系统将调用一个缺省的异常处理块。(3)操作数栈区机器指令只从操作数栈中取操作数,对它们进行操作,并把结果返回到栈中。选择栈结构的原因是:在只有少量寄存器或非通用寄存器的机器(如Intel486)上,也能够高效地模拟虚拟机的行为。操作数栈是32位的。它用于给方法传递参数,并从方法接收结果,也用于支持操作的参数,并保存操作的结果。例如,iadd指令将两个整数相加。相加的两个整数应该是操作数栈顶的两个字。这两个字是由先前的指令压进堆栈的。这两个整数将从堆栈弹出、相加,并把结果压回到操作数栈中。每个原始数据类型都有专门的指令对它们进行必须的操作。每个操作数在栈中需要一个存储位置,除了long和double型,它们需要两个位置。操作数只能被适用于其类型的操作符所操作。例如,压入两个int类型的数,如果把它们当作是一个long类型的数则是非法的。在Sun的虚拟机实现中,这个限制由字节码验证器强制实行。但是,有少数操作(操作符dupe和swap),用于对运行时数据区进行操作时是不考虑类型的。4、堆Java的堆是一个运行时数据区,类的实例(对象)从中分配空间。Java语言具有无用单元收集能力:它不给程序员显式释放对象的能力。Java不规定具体使用的无用单元收集算法,可以根据系统的需求使用各种各样的算法。5、方法区方法区与传统语言中的编译后代码或是Unix进程中的正文段类似。它保存方法代码(编译后的java代码)和符号表。每个类文件包含了一个Java类或一个Java界面的编译后的代码。可以说类文件是Java语言的执行代码文件。为了保证类文件的平台无关性,Java虚拟机规范中对类文件的格式也作了详细的说明。其具体细节请参考Sun公司的Java虚拟机规范。Java有许多值得称道的优点,如简单、面向对象、分布式、解释性、可靠、安全、结构中立性、可移植性、高性能、多线程、动态性等。 Java类文件(.class文件)每个类文件包含了一个Java类或一个Java界面的编译后的代码。可以说类文件是Java语言的执行代码文件。为了保证类文件的平台无关性,Java虚拟机规范中对类文件的格式作了详细的说明。其具体细节请参考Sun公司的Java虚拟机规范。第二章 系统分析2.1 可行性分析随着Internet技术的发展,论坛已成为网络上不可缺少的交流方式之一。目前,大多数论坛系统都是基于B/S模式,其个性化特点明显降低,无法实现具有个性化的功能要求。操作是以鼠标为最基本的操作方式,无法满足快速操作的要求。页面动态刷新,响应速度明显降低。应用服务器运行数据负荷较重。给数据库访问造成较大的压力。本系统采用C/S模式设计。由于客户端实现与服务器的直接相连,没有中间环节,因此响应速度快。软件功能设计个性化,具有直观、简单、方便的特点,可以满足客户个性化的功能要求;操作界面漂亮、形式多样,可以充分满足客户自身的个性化要求。2.2 需求分析在网络技术逐渐渗入社会生活各个层面的今天,以前网站上的论坛管理统要用户登陆以后才能进行相关访问及互动。而随着网络互联技术的进步,现在网站投票只需打开网页就可进行论坛留言。论坛对象是很多的,各个层次都可进行论坛访问,大至国家领导,小至一个普通干部,访问和留言从到指定用户进行表格到现在通过网络直接点击相应就可进行。网上论坛管理系统可解决游客访问及留言,致使现在几乎各个网站都有各种类型网站论坛管理系统,用户可选择自己的看法。目前,网上论坛已不是新事物,许许多多的别具特色的论坛在网络上随处可见。为了体现论坛的特色,我们搜索各式各样的论坛版面,为了改变网上现存论坛的普遍风格,追加功能,更便于管理,于是开发出一套界面友好美观,易于使用的论坛管理系统。系统包括主要的功能:新用户的注册,会员密码取回,会员登录,用户自己修改信息,管理员删除用户,游客浏览留言,会员新增留言,会员留言回复,管理员删除留言这些功能,可以应付一般的用户需要。网上论坛系统是一个会员登录留言系统。网上游客能够浏览论坛上的帖子,并且能够注册成为用户。论坛注册会员能够修改自己的资料信息,申请版主,发表帖子,让大家积极参与讨论。论坛管理员能够便于管理论坛,包括浏览游客留言,审核留言,对于不健康或是不利于社会稳定的留言能进行删除操作,会员管理以及论坛版主管理等等。2.3 系统用例图图2-1 用例图用户首先登录再注册或进入主界面,进入主界面后可以进行讨论、个人设置、发布新主题。进入讨论时可以回复主题发送帖子。2.4 系统主要类表2-1 类第三章 数据库的设计3.1 数据库的选择SQL Server 2000能够满足今天的商业环境要求不同类型的数据库解决方案。它一种应用广泛的数据库管理系统,具有许多显著的优点:易用性、适合分布式组织的可伸缩性、用于决策支持的数据仓库功能、与许多其他服务器软件紧密关联的集成性、良好的性价比等。SQL Server 2000 还为您的数据管理与分析带来了灵活性,允许单位在快速变化的环境中从容响应,从而获得竞争优势。3.2 数据库的访问方法3.2.1 连接方式java连接数据库有两种方式,一是通过jdbc/odbc桥(需要配置数据源),二是通过jdbc驱动.这里使用后者,因为前者涉及到jdbc到odbc转换的问题,执行效率很低.1、jdbc驱动: 下载jdbc驱动包安装之后,打开那个文件夹,会看到三个jar包,只要把这三个jar包设置到环境变量(classpath)里就可以了。2、假设驱动程序安装在d:sqldriver目录下,那么就在classpath中添d:sqldrivermsbase.jar;d:sqldrivermssqlserver.jar;d:sqldrivermsutil.jar;或者在使用NetBeans JAVA开发环境中在项目面板中库添加JAR文档,加入三个jar。3、如果使用的是windows xp系统的sp2 版本,就需要给SQL Server2000打一个sp3a或者sp4的补丁.打完之补丁之后才可以使用。3.2.2 安装时候的问题1、补丁安装过程中常见问题 (1)安装过程中出现“以前进行的程序创建了挂起的文件操作,运行安装程序前,必须重新启动”,(2)解决方法、步骤:重启机器,再进行安装,如果发现还有该错误,请按下面步骤;在开始-运行中输入regedit;到HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession Manager位置;选择文件-倒出,保存;在右边窗口右击PendingFileRenameOperations,选择删除,确认;重启安装,问题解决。注意:如果还有同样问题,检查其它注册表中是否有该值存在,如有请删掉。(3)在安装SQL Server SP3,有时候会出现:无论用windows认证还是混和认证,都出现密码错误的情况,这时查看临时目录下的sqlsp.out,会发现以下描述:TCP/IP SocketsSpecified SQL server not found.TCP/IP SocketsConnectionOpen (Connect().其实这是SQL Server SP3的一个小bug,在安装sp3的时候,没有监听TCP/IP端口。(4)解决方法、步骤: 打开SQL server客户器网络实用工具和服务器网络工具,确保启用的协议中包含name pipe,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 应急安全工作培训课件
- 2025山东省莱州市中考数学经典例题含答案详解【能力提升】
- 婴幼儿秋季腹泻生理机制与高发原因解析
- 2024年自考专业(金融)自我提分评估含答案详解【典型题】
- 酒精消费与癌症风险
- 借贷双务合同(标准版)
- 补充协议补充合同(标准版)
- 做账实操-《民非会计制度》的核算内容
- 2024-2025学年中医助理医师每日一练试卷及参考答案详解(A卷)
- 2025年能源与资源行业:新能源储能系统性能优化与成本控制策略报告001
- 安徽科技馆笔试题目及答案
- 厂房分割租赁协议书
- 会计中级职称《财务管理》电子书
- GB/T 45345-2025金属及其他无机覆盖层工程用直流磁控溅射银镀层镀层附着力的测量
- 无人机教员聘用协议书
- 脑科生理病理图谱解读
- 足球教练员的职业素养与道德规范
- 产地证培训讲义
- 《南京理工大学化工》课件
- 养殖场远程视频监控解决方案
- 二手车转让免责协议书范本
评论
0/150
提交评论