已阅读5页,还剩51页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
网上心理咨询系统的设计与实现摘要当今社会己进入信息社会时代,信息己经受到社会的广泛关注,被看作社会和科学技术发展的三大支柱(材料、能源、信息)之一。信息是管理的基础,是进行决策的的基本依据。在一个组织里,信息己作为人力、物力、财力之外的第四种能源,占有重要的地位。然而,信息是一种非物质的,有别于基本资源的新形式的资源。信息也是管理的对象,必须进行管理和控制。网上心理咨询系统是将IT技术用于心理健康信息的管理,它能够收集与存储心理健康的档案信息,提供更新与检索心理健康信息档案的接口;提高工作效率。系统采用JSP为编程语言。论文主要介绍了本课题的开发背景,所要完成的功能和开发的过程。重点的说明了系统设计的重点、设计思想、难点技术和解决方案关键词心理咨询;管理;系统;开发DESIGNANDIMPLEMENTATIONOFONLINECOUNSELINGSYSTEMABSTRACTTODAYSSOCIETYHASENTEREDTHEERAOFINFORMATIONSOCIETY,INFORMATIONHASBEENWIDESPREADCONCERNINSOCIETY,ASTHETHREEPILLARSOFTHESOCIALANDSCIENTIFICANDTECHNOLOGICALDEVELOPMENTMATERIALS,ENERGY,INFORMATIONONEINFORMATIONMANAGEMENT,DECISIONMAKINGBASISFORINANORGANIZATION,THEINFORMATIONHASTHEENERGYOFTHEFOURTHADDITIONTOTHEHUMAN,MATERIALANDFINANCIALRESOURCESTOOCCUPYANIMPORTANTPOSITIONHOWEVER,INFORMATIONISANONMATERIALRESOURCESOFTHENEWFORMISDIFFERENTFROMTHEBASICRESOURCESINFORMATIONISALSOMANAGEDOBJECTS,MANAGEMENTANDCONTROLSITERETRIEVALSYSTEMISTHEITTECHNOLOGYFORTHEMANAGEMENTOFTHESITETORETRIEVEINFORMATION,FILEINFORMATIONRETRIEVALANDSTORAGESITE,ITCANCOLLECT,UPDATEANDRETRIEVETHEWEBSITETORETRIEVEINFORMATIONFILEINTERFACEIMPROVEWORKEFFICIENCYTHESYSTEMUSESJSPASPROGRAMMINGLANGUAGETHEPAPERINTRODUCESTHEDEVELOPMENTBACKGROUNDOFTHESUBJECT,TOCOMPLETETHEDEVELOPMENTANDFUNCTIONOFTHEPROCESSFOCUSONADESCRIPTIONOFTHEFOCUSOFSYSTEMDESIGN,DESIGNIDEAS,DIFFICULTTECHNOLOGYANDSOLUTIONSKEYWORDSMENTALHEALTHMANAGEMENTSYSTEMDEVELOPMENT目录摘要IABSTRACTII1绪论111研究现状112主要研究的目的及内容113研究方法及设计思路2131研究方法2132设计思路22系统开发技术和工具321JSP技术简介322MYSQL数据库323JDBC524B/S模式分析525SERVLET626TOMCAT简介93需求分析与可行性分析1231需求分析1232可行性分析12321经济可行性12322技术可行性12323时间可行性13324法律可行性1333系统开发步骤1334系统实现目标134概要设计1541系统实现的重要功能1542系统体系结构1643系统流程图1744系统ER图185详细设计及实现2051管理员登录界面2052心理健康信息管理2153心理测试模块2354心理咨询模块2355用户登录模块2456用户修改信息模块2657用户注册2858用户信息填写2959用户密码找回30510资源管理数据库设计31511系统最终实现功能346软件测试3561软件测试简介3562软件测试目标3563程序的测试35631测试的重要性及目的35632测试的步骤36633测试的主要内容36结论38参考文献39致谢40外文原文41中文翻译481绪论11研究现状随着科技发展和社会进步,尤其是计算机大范围的普及,计算机应用逐渐由大规模科学计算的海量数据处理转向大规模的事务处理和对工作流的管理,这就产生了以台式计算机为核心,以数据库管理系统为开发环境的管理信息系统在大规模的事务处理和对工作流的管理等方面的应用,特别是在心理健康信息管理之中的应用日益收到人们的关注。近年来我国信息事业发展迅速,手工管理方式在心理健康信息管理等需要大量事务处理的应用中已显得不相适应,采用IT技术提高服务质量和管理水平势在必行。目前,对外开放必然趋势使信息行业直面外国同行单位的直接挑战,因此,信息行业必须提高其工作效率,改善其工作环境。这样,心理健康信息管理的信息化势在必行。在传统的心理健康信息管理中,其过程往往是很复杂的,繁琐的,心理健康信息管理以心理健康信息管理为核心,在此过程中又需要经过若干道手续,因为整个过程都需要手工操作,效率十分低下,且由于他们之间关联复杂,统计和查询的方式各不相同;且会出现信息的重复传递问题,因此该过程必须实现信息化。随着计算机技术和网络技术的飞速发展,各校都相继采用信息技术对心理健康有关信息进行管理。然而,也注意到许多单位,并没有很好地运用现代信息技术对心理健康等信息进行管理,很多网上心理咨询系统将所有的管理事务全都交给管理员来完成,如果信息有任何的增删改查,都需要通过管理员来完成,非常麻烦。如何开发一个实用的网上心理咨询系统,是摆在设计者面前的一大难题。通过对网上心理咨询系统进行深入分析和研究,本文从功能模块、数据格式、通用性三个方面进行细化,提出网上心理咨询系统设计的理论依据和实现的方法。设计系统的数据层、逻辑层、界面层,重点体现数据格式的规范,也为通用性的实施提供保障。最后在系统开发环节,从技术层面实现代码的可重用性及系统的通用性,从而使系统的设计更具实用性和通用性。总之我觉得现在逐渐发展起来的信息系统可以让心理健康变得非常灵活,每一种角色都有自己的权限,保证了信息的安全性以及交流简易性。因此,基于MVC的网上心理咨询系统将会是以后的趋势。所以我通过开发一个网上心理咨询系统来完成以便能更好的衔接。12主要研究的目的及内容本课题的目的是使心理健康信息管理清晰化,透明化,便于操作,易于管理。通过功能模块的优化组合实现不同的管理细节,使管理过程实现最大程度的自动化与信息化,并能自动对人工操作环节进行复查,使网上心理咨询系统出错率降至最低。在传统的心理健康信息管理中,各种管理工作往往是很复杂烦琐的。心理健康信息管理的特点是信息处理量比较大,所管理的种类比较繁多,而且由于消费、缴费等单据发生量特别大,关联信息多,查询和统计的方式不尽相同。在管理过程中经常会出现信息的重复传递,因此心理健康信息管理必须实现计算机化处理。我们系统开发的总体任务是实现心理健康信息管理的系统化、规范化、自动化、信息化与智能化,从而达到提高心理健康信息管理效率的目的。13研究方法及设计思路131研究方法网上心理咨询系统采用B/S结构、结合MYSQL网络数据库,在使用MYECLIPSE开发平台的基础上使用网络编程语言JSP,SERVLET,数据库连接语言JDBC等技术实现网页的功能。同时使用TOMCAT服务器来最终实现网络心理咨询系统。132设计思路(1)系统应符合心理健康信息管理的规定,满足信息行业相关人员日常使用的需要,并达到操作过程中的直观,方便,实用,安全等要求。(2)系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充,维护。(3)系统应具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改、备份等操作。(4)尽量采用现有软件环境及先进的管理系统开方案,从而达到充分利用现有资源,提高系统开发水平和应用效果的目的。2系统开发技术和工具21JSP技术简介JSPJAVASERVERPAGES是由SUNMICROSYSTEMS公司倡导、许多公司参与一起建立的一种动态网页技术标准。它是在传统的网页HTML文件HTM,HTML中插入JAVA程序段SCRIPTLET和JSP标记TAG,从而形成JSP文件JSP。用JSP开发的WEB应用是跨平台的,即能在LINUX下运行,也能在其他操作系统上运行。JSP技术使用JAVA编程语言编写类XML的TAGS和SCRIPTLETS,来封装产生动态网页的处理逻辑。网页还能通过TAGS和SCRIPTLETS访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于WEB的应用程序的开发变得迅速和容易。WEB服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的JAVA程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。JSP与JAVASERVLET一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。JSP主要优点如下(1)一次编写,到处运行。在这一点上JAVA比PHP更出色,除了系统之外,代码不用做任何更改。(2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比JSP/PHP的局限性是显而易见的。(3)强大的可伸缩性。从只有一个小的WAR文件就可以运行SERVLET/JSP,到由多台服务器进行集群和负载均衡,到多台APPLICATION进行事务处理,消息处理,一台服务器到无数台服务器,JAVA显示了一个巨大的生命力。(4)多样化和功能强大的开发工具支持。这一点与JSP很像,JAVA已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。22MYSQL数据库MYSQL最初的开发者的意图是用MYSQL和他们自己的快速低级例程ISAM去连接表格。不管怎样,在经过一些测试后,开发者得出结论MYSQL并没有他们需要的那么快和灵活。这导致了一个使用几乎和MYSQL一样的API接口的用于他们的数据库的新的SQL接口的产生,这样,这个API被设计成允许为用于MYSQL而写的第三方代码更容易移植到MYSQL。1MYSQL的概述MYSQL是一个关系型数据库管理系统。目前MYSQL被广泛地应用在INTERNET上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MYSQL作为网站数据库。2MYSQL的特性A使用C和C编写,并使用了多种编译器进行测试,保证源代码的可移植性。B支持MACOS、WINDOWS等多种操作系统。C为多种编程语言提供了API。这些编程语言包括C、C、EIFFEL、JAVA、PERL、PYTHON、RUBY和TCL等。D支持多线程,充分利用CPU资源。E优化的SQL查询算法,有效地提高查询速度。F既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB2312、BIG5,日文的SHIFT_JIS等都可以用作数据表名和数据列名。G提供TCP/IP、JDBC和JDBC等多种数据库连接途径。H提供用于管理、检查、优化数据库操作的管理工具。I可以处理拥有上千万条记录的大型数据库。3MYSQL的应用与其他的大型数据库例如ORACLE、DB2等相比,MYSQL自有它的不足之处,如规模小、功能有限等,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MYSQL提供的功能已经绰绰有余。4MYSQL管理可以使用命令行工具管理MYSQL数据库,也可以使用SQLSERVER自带的企业管理器来进行管理,界面友好,操作简单。AMYSQL存储引擎MYSQL的默认数据库,最为常用。拥有较高的插入,查询速度,但不支持事务。BINNODB事务型数据库的首选引擎,支持ACID事务,支持行级锁定。CBDB源自BERKELEYDB,事务型数据库的另一种选择,支持COMMI和ROLLBACK等其他事务特性。DMEMORY所有数据置于内存的存储引擎,拥有极高的插入,更新和查询效率。但是会占用和数据量成正比的内存空间。并且其内容会在MYSQL重新启动时丢失。EMERGE将一定数量的MYISAM表联合而成一个整体,在超大规模数据存储时很有用。FARCHIVE非常适合存储大量的独立的,作为历史记录的数据。因为它们不经常被读取。GFEDERATED将不同的MYSQL服务器联合起来,逻辑上组成一个完整的数据库。非常适合分布式应用。HCLUSTER/NDB高冗余的存储引擎,用多台数据机器联合提供服务以提高整体性能和安全性。适合数据量大,安全和性能要求高的应用。ICSV逻辑上由逗号分割数据的存储引擎。JBLACKHOLE黑洞引擎,写入的任何数据都会消失。4MYSQL最常见的应用架构单点SINGLE,适合小规模应用。复制REPLICATION,适合中小规模应用。集群CLUSTER,适合大规模应用。23JDBCJDBC(JAVADATABASECONNECTIVITY,JAVA数据库连接)是一种用于执行SQL语句的JAVAAPI,可以为多种关系数据库提供统一访问,它由一组用JAVA语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯JAVAAPI编写数据库应用程序,同时,JDBC也是个商标名。有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBC,就不必为访问ACCESS数据库专门写一个程序,为访问ORACLE数据库又专门写一个程序,或为访问INFORMIX数据库又编写另一个程序等等,程序员只需用JDBC写一个程序就够了,它可向相应数据库发送SQL调用。同时,将JAVA语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是JAVA语言“编写一次,处处运行”的优势。JAVA数据库连接体系结构是用于JAVA应用程序连接数据库的标准方法。JDBC对JAVA程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC使用已有的SQL标准并支持与其它数据库连接标准,如JDBC之间的桥接。JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。24B/S模式分析C/S模式主要由客户应用程序CLIENT、服务器管理程序SERVER和中间件MIDDLEWARE三个部件组成。客户应用程序是系统中用户与数据进行交互的部件。服务器程序负责有效地管理系统资源,如管理一个信息数据库,其主要工作是当多个客户并发地请求服务器上的相同资源时,对这些资源进行最优化管理。中间件负责联结客户应用程序与服务器管理程序,协同完成一个作业,以满足用户查询管理数据的要求。B/S模式是一种以WEB技术为基础的新型的MIS系统平台模式。把传统C/S模式中的服务器部分分解为一个数据服务器与一个或多个应用服务器WEB服务器,从而构成一个三层结构的客户服务器体系。第一层客户机是用户与整个系统的接口。客户的应用程序精简到一个通用的浏览器软件,如NETSCAPENAVIGATOR,微软公司的IE等。浏览器将HTML代码转化成图文并茂的网页。网页还具备一定的交互功能,允许用户在网页提供的申请表上输入信息提交给后台,并提出处理请求。这个后台就是第二层的WEB服务器。第二层WEB服务器将启动相应的进程来响应这一请求,并动态生成一串HTML代码,其中嵌入处理的结果,返回给客户机的浏览器。如果客户机提交的请求包括数据的存取,WEB服务器还需与数据库服务器协同完成这一处理工作。第三层数据库服务器的任务类似于C/S模式,负责协调不同的WEB服务器发出的SQ请求,管理数据库。B/S模式首先简化了客户端。它无需象C/S模式那样在不同的客户机上安装不同的客户应用程序,而只需安装通用的浏览器软件。这样不但可以节省客户机的硬盘空间与内存,而且使安装过程更加简便、网络结构更加灵活。假设一个企业的决策层要开一个讨论库存问题的心理健康,他们只需从心理健康室的计算机上直接通过浏览器查询数据,然后显示给大家看就可以了。甚至与会者还可以把笔记本电脑联上心理健康室的网络插口,自己来查询相关的数据。其次,它简化了系统的开发和维护。系统的开发者无须再为不同级别的用户设计开发不同的客户应用程序了,只需把所有的功能都实现在WEB服务器上,并就不同的功能为各个组别的用户设置权限就可以了。各个用户通过HTTP请求在权限范围内调用WEB服务器上不同处理程序,从而完成对数据的查询或修改。现代企业面临着日新月异的竞争环境,对企业内部运作机制的更新与调整也变得逐渐频繁。相对于C/S,B/S的维护具有更大的灵活性。当形势变化时,它无须再为每一个现有的客户应用程序升级,而只需对WEB服务器上的服务处理程序进行修订。这样不但可以提高公司的运作效率,还省去了维护时协调工作的不少麻烦。如果一个公司有上千台客户机,并且分布在不同的地点,那么便于维护将会显得更加重要。再次,它使用户的操作变得更简单。对于C/S模式,客户应用程序有自己特定的规格,使用者需要接受专门培训。而采用B/S模式时,客户端只是一个简单易用的浏览器软件。无论是决策层还是操作层的人员都无需培训,就可以直接使用。B/S模式的这种特性,还使MIS系统维护的限制因素更少。最后,B/S特别适用于网上信息发布,使得传统的MIS的功能有所扩展。这是C/S所无法实现的。而这种新增的网上信息发布功能恰是现代企业所需的。这使得企业的大部分书面文件可以被电子文件取代,从而提高了企业的工作效率,使企业行政手续简化,节省人力物力。鉴于B/S相对于C/S的先进性,B/S逐渐成为一种流行的MIS系统平台。各软件公司纷纷推出自己的INTERNET方案,基于WEB的财务系统、基于WEB的ERP。一些企业已经领先一步开始使用它,并且收到了一定的成效。B/S模式的新颖与流行,和在某些方面相对于C/S的巨大改进,使B/S成了MIS系统平台的首选。本系统也采用B/S结构开发。25SERVLETSERVLET是用JAVA编写的SERVER端程序,它与协议和平台无关。SERVLET运行于JAVAENABLEDWEBSERVER中。JAVASERVLET可以动态地扩展SERVER的能力,并采用请求响应模式提供WEB服务。最早支持SERVLET技术的是JAVASOFT的JAVAWEBSERVER。此后,一些其它的基于JAVA的WEBSERVER开始支持标准的SERVLETAPI。一、SERVLET的特点SERVLET是JAVA技术对CGI编程的回答。SERVLET程序在服务器端运行,动态地生成WEB页面。与传统的CGI和许多其他类似CGI的技术相比,JAVASERVLET具有更高的效率,更容易使用,功能更强大,具有更好的可移植性,更节省投资(更重要的是,SERVLET程序员收入要比PERL程序员高)。高效在传统的CGI中,每个请求都要启动一个新的进程,如果CGI程序本身的执行时间较短,启动进程所需要的开销很可能反而超过实际执行时间。而在SERVLET中,每个请求由一个轻量级的JAVA线程处理(而不是重量级的操作系统进程)。在传统CGI中,如果有N个并发的对同一CGI程序的请求,则该CGI程序的代码在内存中重复装载了N次;而对于SERVLET,处理请求的是N个线程,只需要一份SERVLET类代码。在性能优化方面,SERVLET也比CGI有着更多的选择,比如缓冲以前的计算结果,保持数据库连接的活动,等等。1方便SERVLET提供了大量的实用工具例程,例如自动地解析和解码HTML表单数据、读取和设置HTTP头、处理COOKIE、跟踪会话状态等。2功能强大在SERVLET中,许多使用传统CGI程序很难完成的任务都可以轻松地完成。例如,SERVLET能够直接和WEB服务器交互,而普通的CGI程序不能。SERVLET还能够在各个程序之间共享数据,使得数据库连接池之类的功能很容易实现。3可移植性好SERVLET用JAVA编写,SERVLETAPI具有完善的标准。因此,为IPLANETENTERPRISESERVER写的SERVLET无需任何实质上的改动即可移植到APACHE、MICROSOFTIIS或者WEBSTAR。几乎所有的主流服务器都直接或通过插件支持SERVLET。4节省投资不仅有许多廉价甚至免费的WEB服务器可供个人或小规模网站使用,而且对于现有的服务器,如果它不支持SERVLET的话,要加上这部分功能也往往是免费的(或只需要极少的投资)。二、SERVLET的主要功能SERVLET的主要功能在于交互式地浏览和修改数据,生成动态WEB内容。这个过程为客户端发送请求至服务器端。服务器将请求信息发送至SERVLET。SERVLET生成响应内容并将其传给SERVER。响应内容动态生成,通常取决于客户端的请求。服务器将响应返回给客户端。SERVLET看起来像是通常的JAVA程序。SERVLET导入特定的属于JAVASERVLETAPI的包。因为是对象字节码,可动态地从网络加载,可以说SERVLET对SERVER就如同APPLET对CLIENT一样,但是,由于SERVLET运行于SERVER中,它们并不需要一个图形用户界面。从这个角度讲,SERVLET也被称为FACELESSOBJECT。三、JAVASERVLET的优势1SERVLET可以和其他资源文件、数据库、APPLET、JAVA应用程序等交互,以生成返回给客户端的响应内容。如果需要,还可以保存请求响应过程中的信息。2采用SERVLET,服务器可以完全授权对本地资源的访问如数据库,并且SERVLET自身将会控制外部用户的访问数量及访问性质。3SERVLET可以是其它服务的客户端程序,例如,它们可以用于分布式的应用系统中,可以从本地硬盘,或者通过网络从远端硬盘激活SERVLET。4SERVLET可被链接CHAIN。一个SERVLET可以调用另一个或一系列SERVLET,即成为它的客户端。5采用SERVLETTAG技术,可以在HTML页面中动态调用SERVLET。6SERVLETAPI与协议无关。它并不对传递它的协议有任何假设。7像所有的JAVA程序一样,SERVLET拥有面向对象JAVA语言的所有优势。8SERVLET提供了JAVA应用程序的所有优势可移植、稳健、易开发。使用。9SERVLET的TAG技术,SERVLET能够生成嵌于静态HTML页面中的动态内容。一个SERVLET被客户端发送的第一个请求激活,然后它将继续运行于后台,等待以后的请求。每个请求将生成一个新的线程,而不是一个完整的进程。多个客户能够在同一个进程中同时得到服务。一般来说,SERVLET进程只是在WEBSERVER卸载时被卸载。四、SERVLET生命周期装载SERVLET。这项操作一般是动态执行的。然而,SERVER通常会提供一个管理的选项,用于在SERVER启动时强制装载和初始化特定的SERVLET。SERVER创建一个SERVLET的实例。SERVER调用SERVLET的INIT方法。一个客户端的请求到达SERVER。SERVER创建一个请求对象。SERVER创建一个响应对象。SERVER激活SERVLET的SERVICE方法,传递请求和响应对象作为参数。SERVICE方法获得关于请求对象的信息,处理请求,访问其他资源,获得需要的信息SERVICE方法使用响应对象的方法,将响应传回SERVER,最终到达客户端。SERVICE方法可能激活其它方法以处理请求,如DOGET或DOPOST或程序员自己开发的新的方法。对于更多的客户端请求,SERVER创建新的请求和响应对象,仍然激活此SERVLET的SERVICE方法,将这两个对象作为参数传递给它。如此重复以上的循环,但无需再次调用INIT方法。一般SERVLET只初始化一次,当SERVER不再需要SERVLET时一般当SERVER关闭时,SERVER调用SERVLET的DESTROY方法。在美国,EJBSERVLETJSP几乎成为电子商务的开发标准。本来ASP也很有希望,但微软最近可能把精力都集中在打官司和WIN2000上,因此电子商务发展得太少。PHP由于其模式和一些天生缺陷,毫无希望。在美国,很少有商业站点用PHP的。SERVLET是使用JAVASERVLET应用程序设计接口(API)及相关类的JAVA程序。除了JAVASERVLETAPI,SERVLET还可以使用用以扩展和添加到API的JAVA类软件包。SERVLET在启用JAVA的WEB服务器上或应用服务器上运行并扩展了该服务器的能力。JAVASERVLET对于WEB服务器就好象JAVAAPPLET对于WEB浏览器。SERVLET装入WEB服务器并在WEB服务器内执行,而APPLET装入WEB浏览器并在WEB浏览器内执行。JAVASERVLETAPI定义了一个SERVLET和JAVA使能的服务器之间的一个标准接口,这使得SERVLETS具有跨服务器平台的特性。SERVLET通过创建一个框架来扩展服务器的能力,以提供在WEB上进行请求和响应服务。当客户机发送请求至服务器时,服务器可以将请求信息发送给SERVLET,并让SERVLET建立起服务器返回给客户机的响应。当启动WEB服务器或客户机第一次请求服务时,可以自动装入SERVLET。装入后,SERVLET继续运行直到其它客户机发出请求。SERVLET的功能涉及范围很广。例如,SERVLET可完成如下功能1创建并返回一个包含基于客户请求性质的动态内容的完整的HTML页面。2创建可嵌入到现有HTML页面中的一部分HTML页面(HTML片段)。3与其它服务器资源(包括数据库和基于JAVA的应用程序)进行通信。4用多个客户机处理连接,接收多个客户机的输入,并将结果广播到多个客户机上。例如,SERVLET可以是多参与者的游戏服务器。5当允许在单连接方式下传送数据的情况下,在浏览器上打开服务器至APPLET的新连接,并将该连接保持在打开状态。当允许客户机和服务器简单、高效地执行会话的情况下,APPLET也可以启动客户浏览器和服务器之间的连接。可以通过定制协议或标准(如IIOP)进行通信。6对特殊的处理采用MIME类型过滤数据,例如图像转换和服务器端包括(SSI)。7将定制的处理提供给所有服务器的标准例行程序。例如,SERVLET可以修改如何认证用户。26TOMCAT简介TOMCAT服务器是一个免费的开放源代码的WEB应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好APACHE服务器,可利用它响应对HTML(标准通用标记语言下的一个应用。)页面的访问请求。实际上TOMCAT部分是APACHE服务器的扩展,但它是独立运行的,所以当你运行TOMCAT时,它实际上作为一个与APACHE独立的进程单独运行的。诀窍是,当配置正确时,APACHE为HTML页面服务,而TOMCAT实际上运行JSP页面和SERVLET。另外,TOMCAT和IIS等WEB服务器一样,具有处理HTML页面的功能,另外它还是一个SERVLET和JSP容器,独立的SERVLET容器是TOMCAT的默认模式。不过,TOMCAT处理静态HTML的能力不如APACHE服务器。目前TOMCAT最新版本为800RC1ALPHARELEASED。TOMCAT很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。1名称由来TOMCAT最初是由SUN的软件构架师詹姆斯邓肯戴维森开发的。后来他帮助将其变为开源项目,并由SUN贡献给APACHE软件基金会。由于大部分开源项目OREILLY都会出一本相关的书,并且将其封面设计成某个动物的素描,因此他希望将此项目以一个动物的名字命名。因为他希望这种动物能够自己照顾自己,最终,他将其命名为TOMCAT(英语公猫或其他雄性猫科动物)。而OREILLY出版的介绍TOMCAT的书籍(ISBN0596003188)1的封面也被设计成了一个公猫的形象。而TOMCAT的LOGO兼吉祥物也被设计成了一只公猫。2TOMCAT配置方法启动内存参数的配置TOMCAT/BIN/CATALINABAT如果是LINUX就是CATALINASH在REM的后面增加如下参数SETJAVA_OPTSXMS256MXMX256MXXMAXPERMSIZE64M修改TOMCAT的JDK目录打开TOMCAT/BIN/CATALINABAT在最后一个REM后面增加SETJAVA_HOMECPROGRAMFILESJAVAJDK1603增加虚拟目录/TOMCAT/CONF/SERVERXML第一行是以前默认存在的,第二行是新增的使用默认配置的TOMCAT,另外虚拟目录也可这设置因为默认情况下,TOMCAT启动过程中配置虚拟目录的时候会从WEBAPPS目录下查找WEBCONTENT应用。这样配置好了,即使以后从一台服务器移植到另一台服务器,不做任何修改也能运行起来。4GET方式URL乱码问题解决打开TOMCAT/CONF/SERVERXML查找下面这部分,在最后增加一段代码就可以了。3需求分析与可行性分析31需求分析表31硬件需求硬件处理器INTEL酷睿I5处理器内存1G或更大硬盘256G或更大服务器软件MICROSOFTWINDOWS7。MYECLIPSE开发平台。MYSQ数据库。MICROSOFTOFFICE2007客户机硬件IE内核浏览器。软件MICROSOFTWINDOWS7MICROSOFTIE60或更高版本系统的性能要求通常指系统需要的存储容量以及后援存储,重新启动和安全性,运行效率等方面的考虑。硬件系统环境COREI3以上、1G(RAM)、256GB(HD)。32可行性分析321经济可行性经济可行性研究是对使用者的经济现状和投资能力进行分析,对系统建设运行和维护费用进行估算,对系统建成后可能取得的社会和经济效益进行估计。因为本系统是毕业设计,由我们自己开发的,在经济上的投入可以忽略不计,系统完成后将会为心理健康咨询提供很大的方便。但是在企业级的软件开发过程中,经济的可行性就显的尤为重要,也就是说,开发软件所需要的费用一定要低于该软件投入使用后给公司可以节省的资金。估算软件的开发费用和今后的运行、维护费用,估计软件将获得的效益,并将费用与效益进行比较,看是否有利。其中包括购买和安装心理健康的费用计算机硬件、系统软件、机房、电源、空调等;软件开发费用若由实习单位的技术人员开发,则该项费用可以计入下面的人员费用一项;人员费用系统开发人员、操作人员和维护人员的工资、培训费用等;消耗品费用系统开发所用材料、系统正常运行所用消耗品,例如水、电费,打印纸、软盘、色带等开支。所有开支都不大,所以经济上是可行的。322技术可行性网上心理咨询系统采用B/S结构、结合MYSQL网络数据库,在使用MYECLIPSE开发平台的基础上使用网络编程语言JSP,SERVLET,数据库连接语言JDBC等技术实现网页的功能。同时使用TOMCAT服务器来最终实现网络心理咨询系统。技术可行性要考虑现有的技术条件是否能够顺利完成开发工作,软硬件配置是否满足开发的需求等。网上心理咨询系统用的是JSP开发语言,调试相对简单,当前的计算机硬件配置也完全能满足开发的需求。软件方面由于目前BS模式软件相对发展成熟,故软件的开发平台成熟可行,它们速度快、容量大、可靠性能高、价格低,完全能满足系统的需求。在技术上是绝对可行的。323时间可行性从时间上看,在两个月的时间里学习相关知识,并开发心理健康信息管理系统,时间上是有点紧,但是不是不可能实现,通过两个多月的努力功能应该基本实现。324法律可行性1所有技术资料都为合法。2开发过程中不存在知识产权问题。3开发过程中未涉及任何法律责任。综上所述,本系统的开发从技术上、从经济上、从法律上都是完全可靠的。33系统开发步骤一般说来,管理信息系统的建立与应用可以划分成总体规划、系统开发和系统运行三个阶段,其中系统开发阶段还可进一步分为系统分析、系统设计和系统实施等工作环节。上述各个阶段排列成一个严格的线性开发序列,在每个工作阶段均产生完整的技术文档作为下一阶段工作的指导和依据,每一阶段都应对文档进行评审,确信该阶段工作已完成并达到要求后才能进入下一阶段,同时在以后的工作中不能轻易改变前面经过评审的成果。上述开发方式的主要优点是便于开发工作的组织和管理,并且可大大降低管理信息系统开发的复杂性。国内外许多系统开发的实例都证明这是一种行之有效的开发方式。国外曾有人对一些软件项目开发各阶段的工作量进行了统计,结果表明,在开发过程中各工作阶段所占全部工作量的比重分别达到系统分析系统设计编程模块调试系统调试2015202520。由此可见,程序编写在开发工作中只占很小比例,而调试工作却占整个开发工作量的一半左右,因此“系统开发就是编程”的习惯说法显然是片面的。另据统计,在建立管理信息系统的三个阶段中,总体规划和系统开发阶段的工作量约占整个工作量的2/3,而运行、维护阶段要占1/3,这说明一个管理信息系统开发后,仍应十分重视它的维护工作,以便使系统不断完善并充分发挥其作用。34系统实现目标随着经济社会的不断发展,不管是学生或者是职场人员,压力愈来愈大,所产生的心理问题已经开始影响着人们的生活和工作,所以进行心理咨询这一活动,已经成为当今社会发展的一个趋势。所以建立一个网上心理咨询系统具有重要的意义。网上心理咨询系统是将软件工程技术用于网上心理咨询系统的管理,它能够通过网络普及心理调节的方式和方法并且能够收集用户的心理问题并提供帮助。系统主要可分为以下几个模块前台功能新闻动态、热门文章、心理测评、专题辅导、会员管理、管理登录。用户进行注册和登录、浏览心理咨询的动态、心理测试、心理咨询。后台(管理员)管理员密码的修改、新闻动态和专题辅导中的信息进行增加、修改、删除、心理测评的试题进行增加、修改、删除、热门文章的内容进行增加、修改、删除、管理心理咨询中的内容修改,删除等、对心理咨询中,用户提出的疑问,进行回答。4概要设计在系统需求分析阶段,搞清楚了软件“做什么”的问题,形成了目标系统的逻辑模型。现在我们所要做的就是要把软件“做什么”的逻辑模型变换为“怎么做”的物理模型,即着手实现系统的需求。首先,我们需要描述的是系统的总的体系结构。41系统实现的重要功能系统的概要设计中最重要的就是系统的模块化。模块化是指解决一个复杂问题时自项向下逐层把软件系统划分成若干个模块的过程。每个模块完成一个特定的功能,所有的模块按某种方法组织起来,成为一个整体,完成整个系统所要求的功能。将系统划分为多个模块是为了降低软件系统的复杂性,提高可读性、可维护性,但模块的划分不能是任意的,应尽量保持其独立性。也就是说,每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单,即尽量做到高内聚低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础。在系统的概要设计中采用结构化设计以需求分析阶段产生的数据流图为基础,按一定的步骤映射成软件结构。首先将整个系统化分为几个小问题,小模块。然后,进一步细分模块,添加细节。前台功能1新闻动态主要是提供心理咨询的新闻。2热门文章提供最新的关于心理调节的文章。3心理测评主要是在网站上提供心理测评的试题。4专题辅导可以情绪心理、恋爱心理、学习心理、社交心理几方面的内容。5会员管理进行会员的注册登录和相关信息的修改。6管理登录管理员对于页面其他模块的管理用户1进行注册和登录,对用户的信息进行修改。2浏览心理咨询新闻动态,了解特定心理问题的处理方式。3心理测试,用户登陆后,选择试题,进行心理测验,提交后,得出相对分数。分数越高说明心理状况越好4进行心理咨询,可以通过留言的方式给管理员提出您的问题,管理员会及时的根据您提出的问题作出回答。注意3,4需要用户进行注册登录后,才可以进行操作后台(管理员)1进行登录;修改管理员密码;增加或者删除管理员。2对新闻动态和专题辅导中的信息进行增加、修改、删除。3心理测评的试题进行增加、修改、删除。4热门文章的内容进行增加、修改、删除。5管理心理咨询中的内容修改,删除等6对心理咨询中,用户提出的疑问,进行回答。42系统体系结构在系统功能分析的基础上,做系统功能模块图,其中包括用户信息管理、文章信息管理、在线评测、系统管理。如图41所示图41系统体系结构43系统流程图描述网上心理咨询系统的系统流程步骤密码正确停止退出系统选择操作方式进入主控模块输入用户名、密码开始图42系统流程图44系统ER图ER图也称实体联系图ENTITYRELATIONSHIPDIAGRAM,提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。该ER图描述了系统的主要实现的功能和系统、管理员、信息之间的联系。NYYYY用户名密码管理员管理网上心理咨询系统用户信息修改密码文章信息新闻信息网站管理文章检索在线测试心理咨询增加用户用户管理图44用户后台功能实现ER图用户阅读文章心理测评心理咨询图43系统ER图1N1N用户修改密码修改资料退出登录状态图45用户前台功能ER图图46管理员后台功能ER图5详细设计及实现51管理员登录界面对于一个完整的网上心理咨询系统,不仅要求功能强大、操作简单,还要有良好的设计风格和另人爽目的界面。登录界面对于整个系统来说是非常重要的,因为它设置了进入本系统的用户和口令,防止非法用户进入系统,破坏系统安全和所保存的数据,只有合法的管理员在输入正确的密码后方可进入系统,否则将提示密码或用户名输入错误,并询问用户是否重新输入。这样就对使用者有了限制,增加了系统的安全性和保密性,便于控制和管理,有利于系统的维护,如图51所示管理员修改管理员权限修改网站公告添加专题辅导友情链接管理心理测评辅导心理咨询管理新闻动态管理图51管理员登陆界面PUBLICVOIDDOPOSTHTTPSERVLETREQUESTREQUEST,HTTPSERVLETRESPONSERESPONSETHROWSSERVLETEXCEPTION,IOEXCEPTIONRESPONSESETCONTENTTYPECONSTANTCONTENTTYPEREQUESTSETCHARACTERENCODINGCONSTANTCHARACTERENCODINGTRYSTRINGMETHODREQUESTGETPARAMETER“METHOD“TRIMADMINBEANLOGINBEANNEWADMINBEANHTTPSESSIONSESSIONREQUESTGETSESSIONSESSIONSETMAXINACTIVEINTERVAL1200SYSTEMBEANSYSTEMBEANNEWSYSTEMBEANSTRINGSYSDIRSYSTEMBEANGETDIRIFMETHODEQUALS“ONE“/ADMIN登录STRINGUSERNAMEREQUESTGETPARAMETER“USERNAME“STRINGPASSWORDREQUESTGETPARAMETER“PASSWORD“IFUSERNAMENULL|USERNAMETRIMEQUALS“REQUESTSETATTRIBUTE“MESSAGE“,“请正确输入用户名“REQUESTGETREQUESTDISPATCHERSYSDIR“/LOGINJSP“FORWARDREQUEST,RESPONSEELSEIFPASSWORDNULL|PASSWORDTRIMEQUALS“REQUESTSETATTRIBUTE“MESSAGE“,“请输入密码“REQUESTGETREQUESTDISPATCHERSYSDIR“/LOGINJSP“FORWARDREQUEST,RESPONSE52心理健康信息管理心理健康信息管理模块是本系统中一个基础的部分,在本模块中定时的更新关系心理健康有关的文章,可以让读者通过阅读文章从而更加了解自己的心理健康状况,如图52所示图52心理健康信息界面PUBLICVOIDDOPOSTHTTPSERVLETREQUESTREQUEST,HTTPSERVLETRESPONSERESPONSETHROWSSERVLETEXCEPTION,IOEXCEPTIONREQUESTSETCHARACTERENCODINGCONSTANTCHARACTERENCODINGRESPONSESETCONTENTTYPECONSTANTCONTENTTYPESTRINGSYSDIRNEWSYSTEMBEANGETDIRHTTPSESSIONSESSIONREQUESTGETSESSIONSTRINGDATENEWSIMPLEDATEFORMAT“YYYYMMDDHHMMSS“FORMATCALENDARGETINSTANCEGETTIMETRYSTRINGUSERNAME2STRINGSESSIONGETATTRIBUTE“USER“IFUSERNAME2NULLREQUESTGETREQUESTDISPATCHER“ERRORJSP“FORWARDREQUEST,RESPONSEELSESTRINGMETHODNULLNEWSBEANNEWSBEANNEWNEWSBEANHZPBEANTBNEWHZPBEANSMARTUPLOADMYSMARTUPLOADNEWSMARTUPLOAD/INITINTCOUNT0TRYMYSMARTUPLOADINITIALIZECONFIG,REQUEST,RESPONSEMYSMARTUPLOADUPLOADMETHODMYSMARTUPLOADGETREQUESTGETPARAMETER“METHOD“TRIMIFMETHODEQUALS“ADDNEWS“/增加新闻STRINGTITLEFILTERESCAPEHTMLTAGSMYSMARTUPLOADGETREQUESTGETPARAMETER“TITLE“TRIMSTRINGIFHIDEFILTERESCAPEHTMLTAGSMYSMARTUPLOADGETREQUESTGETPARAMETER“IFHIDE“TRIMSTRI
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 保养机械合同范本
- 包车师傅合同范本
- 塑料制品配送合同三篇
- 公益岗位合同范本
- 振华股份合同范本
- sm公司合同范本
- 政府消防合同范本
- 餐饮业运营合作合同范本
- 代理建筑合同范本
- 2024至2030年中国背负式喷雾喷粉机数据监测研究报告
- T 1463纤维增强塑料密度和相对密度试验方法
- 组合体的尺寸标注(最新)课件
- 第17课《屈原》课件(24张PPT) 部编版语文九年级下册
- 人教版四年级数学上册认识梯形课件
- 车辆维修竣工出厂检验制度
- 门卫24小时值班登记表
- 弥漫性大B细胞淋巴瘤病理
- 学校后勤管理工作课件
- 外研版(三起点)六年级英语上册《阅读:Avisit-to-the-zoo-优课课件》
- 苏科版三年级上册劳动第四课《橡皮泥塑》课件(定稿)
- 一年级科学上册教案 -《3 看一看》 青岛版
评论
0/150
提交评论