




已阅读5页,还剩97页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
论文是本团队帮同学做过的案例,需要毕业论文设计(论文论文是本团队帮同学做过的案例,需要毕业论文设计(论文+ +源程序源程序+ +答辩答辩 PPTPPT)的同学联系)的同学联系 799523222799523222 基于基于 JSP 基金管理系统的设计和实现基金管理系统的设计和实现 专专 业:业: 年年 级:级: 学学 号:号: 作作 者:者: 指导老师:指导老师: I The Research and Design Based on JSP Fund management JSP ABSTRACT With the rapid development of Internet, people no longer meet the purpose of information browsing and publishing, but eager to fully enjoy the network brought more and more convenient. Fund Management JSP design and development are adapted to live in todays fast-paced society, so that customers can enjoy convenient and easy to learn about the latest situation of the Fund, through the purchase fund to increase revenue, reasonable financial management. The system is trying to use the network architecture of a JSP dynamic JSP site fund management; it is in Windows 7, the My SQL database platform, Tomcat application server as a network information service using JSP technology development of the fund management page. It includes a user registration, user login, fund accounts, capital account information inquiries, fund purchase, redemption, user management, fund management, customer management, customer financial account management, client fund account management. In addition with fuzzy query function, make management easier locate to certain types of information with inquires customers. The design aims to improve and enhance the the working efficiency of enterprise. make fund management of such enterprises in the new mode more convenient, simple, the working efficiency is higher, thus reducing the time which was taken by face-to-face communication between customer and the enterprise personnel. Reducing the amount of workloads and management pressure. We believe that with the completion of this system, fund management enterprise management operation will be more efficient, fund industry will move towards the direction of more convenient more convenient healthy and rapid development. Also my ability of analysis,papers and practical were trained and enhanced.Inaddtion my professional knowledge level and design research ability to be further improved. KEY WORDS: fund, website, JSP II 基于JSP的基金管理系统的研究与设计 摘 要 伴随着Internet的蓬勃发展,人们已经不再满足用途信息的浏览和发布,而是渴望 着能够充分享受网络所带来的更加多的便利。基金管理网页的设计与开发正适应了当 今社会快节奏地生活,使顾客足不出户便可以方便快捷轻松了解最新的基金情况,通 过购买基金增加收入,合理理财。 本系统便是尝试用JSP在网络上架构一个动态的基金管理网页的网站,它是在Wind ows 7下,以My SQL 为数据库开发平台,Tomcat网络信息服务作为应用服务器,采 用JSP技术开发的基金管理网页。他主要包括了用户注册,用户登陆,基金账户、资金 账户信息查询,基金购买,基金赎回,用户管理,基金管理,客户管理,客户资金账 户管理,客户基金账户管理等功能。另外具有模糊查询功能,使管理人员更加容易定 位相关客户与查询某类信息。 该设计旨在改善并提高企业的工作效率,使基金类企业的管理在新的模式下更方 便,简单,工作效率更高,从而减少客户与企业人员的面对面交流时间。大量减少管 理人员的工作量与相应压力。我们相信随着本系统的完成,基金管理企业的管理运作 会更加高效,基金行业会朝着更加方便更加便捷的方向健康快速的发展。同时也我个 人分析和撰写论文的能力得到训练和提高,动手能力得到进一步加强,专业知识水平 和设计研究能力得到进一步的提高。 关键词:基金,网站,JSP III 目 录 1 项目开发简介 1 1.1 项目开发背景 1 1.2 项目开发目标 1 1.3 项目开发平台简介 2 1.3.1 基于浏览器/服务器的体系结构 .2 1.3.2 面向对象的应用程序开发方法 2 1.3.3 可视化的开发环境 3 1.3.4 Dreamweaver概述 .3 1.3.5 Tomcat服务器 3 2 系统概要设计 .4 2.1 设计思想 4 2.2 设计原则 4 2.3 数据结构设计 4 2.3.1 数据库的分析 4 2.3.2 数据库的设计 5 2.4 运行设计 7 2.5 安全保密设计 7 3 功能模块具体设计 8 3.1 用户管理页面 8 3.1.1 登陆页面 8 3.1.2 注册页面设计 8 3.2 主操作界面 9 3.2.1 主功能页面 9 3.2.2 增添页面10 3.2.3 删除页面11 3.2.4 修改页面 .12 3.2.5 查找页面 .13 4 程序的设计与开发 .15 4.1 程序的设计思想 .15 4.2 程序的具体设计 .15 4.2.1 程序设计语言 .15 4.2.2 数据库联接 .16 4.3 程序中遇到的问题 .17 4.3.1 关于JSP乱码问题的解决 17 IV 5 程序的测试与维护 .21 5.1 测试的重要性及目的 .21 5.1.1 测试的重要性 .21 5.1.2 测试的目的 .21 5.2 测试的步骤 .22 5.3 测试的主要内容 .22 6 系统的维护 .24 7 结 论 25 参考文献 .27 附 录 29 毕业设计说明书(论文)缩写稿译文 .32 The Abbreviation Version of the Thesis of Undergraduates .38 基于 JSP 的基金管理系统的研究与设计 1 1 项目开发简介 1.1 项目开发背景 当今,席卷全球的信息化大潮把信息管理推倒了时代发展的前沿,信息管理系统 已经成为全社会注视的热点。随着科学技术的发展,今天的计算机已经深入到社会和 生活的各个领域,广泛的应用于农业生产、国防和科研领域,尤其在信息管理系统方 面其发展的规模和应用程度已经成为一个国家现代化水平的重要标志。随着科学技术 的不断提高,计算机科学日渐成熟,其强大的功能已成为人们深刻认识,它已进入人 类社会的各个领域并发挥着越来越重要的作用。人们可以将大量的繁琐的工作交给计 算机去完成,从而大大提高了工作效率,此外,计算机可以利用长期使用过程中所存 贮的大量数据进行数据分析,为管理者进行决策提供可靠的信息资料。 目前网络发展前景无限,及早与网络结合,与信息时代同步,与高科技汇合,定 会给社会各行各业的发展注入新鲜的活力。站在网络时代的前沿,我们清晰地看到了 网络时代的宣言:谁掌握了网络,谁就掌握了未来。然而我们清晰地看到了JSP以良好 的扩展性和兼容性、强大的交互能力和数据处理能力,迅速风靡全球,在Internet上几 乎处处都能看到它的身影。目前市面上对JSP技术的需求极其热切,几乎绝大部分的网 站建设和企业的信息管理系统都是采用JSP技术。 由于基金管理行业种类众多,各种信息内容繁琐,而且信息量大,因而在操作上 经常造成很多不便之处,浪费了时间,降低了工作效率,而且极大地影响了基金管理 行业的质量和经济效益。由此我们小组设计了这个基金管理系统。该管理系统的开发 ,本着科学化、规范化、系统化的原则,并考虑到基金的实际情况,采用浏览器和服 务器结构,该系统支持SQL具有查询方便、安全保密性好、用户界面友好、容易操作 等优点。应用此管理系统后,浏览者可以很方便的了解此基金类型的概况以及最新的 种类,为潜在的客户群节省了大量时间,很大程度上提高了基金的工作效率和服务质 量,进而为基金行业带来经济上的收获。 1.2 项目开发目标 本系统结构设计合理,功能齐全,信息指标丰富、规范;采用模块化设计、结构 合理、操作简单,具有友好的人机界面和灵活和的系统可维护性;有优越的数据共享 性,可以使用户充分的利用历史数据,减少据的重复录入和工作量;方便快捷有效的 完成基金管理系统的各项工作,录入数据合法性的校验程度高,数据查询速度快;有 广泛的网络选择性,可以形成浏览器和服务器结构的数据库系统。同时本项目致力于 研究开发系统一体化,为客户提供方便,减少客户选则的盲目性,节约时间,方便客 户。本项目的具体设计目标如下: 2 1 项目开发简介 (1) 以用户为中心的信息组织:信息组织也称为内容组织,就是指管理信息系统将 向访问者提供哪些信息,这是该系统建设实施的第一步,在项目的建设方案的基础上, 要根据其功能、特点分类,进一步确定该系统的信息重点及信息之间的关联,从而明 确各项信息内容,为下一步的视觉设计奠定基础。 (2) 设计线索:项目在信息导航上应该以单数据库和界面功能为线索,使信息数量 多但不重复、不出错。 (3) 个性化视觉设计:界面视觉设计不仅反映了开发人员对该管理系统市场需求的 理解、识别系统的概括,同时还应该能够反映出经营运作的内涵,在客户的审美点与 页面的操作点之间取得平衡,努力推出既能够满足客户心理需要的视觉设计,同时又 能够体现行业化、个性化及公司特点。 本项目开发目标是通过页面操作来帮助客户了解基金并更方便的购买基金,客户 可以在页面中看到已经更新的基金信息,并针对信息做出选择进行回应。 1.3 项目开发平台简介 开发工具、运行环境及其他所需软件。 1.3.1 基于浏览器/服务器的体系结构 B/S结构即浏览器和服务器结构,由三部分组成,一是数据库服务器,二是Web服 务器,三是IE客户端。所有有源代码在JSP服务器上,接收客户的请求执行服务端的代 码,通过代码与数据库交互,向客户端响应页面。IE只是发送请求接收响应将其解析 并显示给用户。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。 在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端 (Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier 结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量, 降低了用户的总体成本。以目前的技术看,局域网建立B/S结构的网络应用,并通过Int ernet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的 开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Inte rnet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限 ,服务器数据库也很安全。在JAVA这样的跨平台语言出现之后,B/S架构管理软件更 是方便、快捷、高效。 1.3.2 面向对象的应用程序开发方法 对象(OBJECT) ,是包含相关的数据(以变量的形式)以及用于操作这些数据的方法 (子程序)的软件包。一个对象是一个类的具体表现,在功能上它与其它程序保持独立, 一个定义良好的对象具有封装的数据和功能。面向对象程序设计的基本要素是抽象, 基于 JSP 的基金管理系统的研究与设计 3 程序员通过抽象来管理复杂性。管理抽象的有效方法是使用层次式的分类特性,这种 方法允许用户根据物理含义分解一个复杂的系统。 1.3.3 可视化的开发环境 用户不用了解WINDOWS和编程技术,通过图形化的交互操作,就可以设计实现 应用系统,开发出美观、简洁的图形化界面来。 1.3.4 Dreamweaver概述 Dreamweaver一个可视化的网页设计和网站管理工具,支持最新的JSP技术,包含 HTML检查、HTML格式控制、HTML格式化选项、Home Site/BBEdit捆绑、可视化网 页设计、图像编辑、全局查找替换和处理Flash等富媒体格式和动态HTML、基于团队 的JSP创作,在编辑上你可以选择可视化方式或者你喜欢的源码编辑方式。 图1-1 页面设计图 1.3.5 Tomcat服务器 Tomcat服务器是一个免费的开放源代码的JSP应用服务器,是一个小型的轻量级应 用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调 试Java程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apa che服务器,可利用它响应对HTML页面的访问请求。实际上Tomcat部分是Apache服务 器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独 立的进程单独运行的。 4 2 系统概要设计 2 系统概要设计 2.1 设计思想 (1) 系统分成几个相对独立的模块,但这些模块都进行集中式管理。 (2) 分层的模块化程序设计思想,整个系统采用模块化结构设计。作为应用程序有 较强的可操作性和扩展性。 (3) 合理的数据流设计,在应用系统设计中,相对独立的模块间以数据流相互连接 ,使各模块间的耦合性较低,方便系统运行,提高系统安全性。 2.2 设计原则 为了使本系统功能齐全完备,操作简便,最大限度的提高软件的质量,从而满足 用户的实际需要,在设计开发过程中遵循了如下原则: (1) 准确性原则:对输入的相关资料建立检错机制,及时报错,使用户能够及时准 确的输入合法资料(如:类型匹配,长度不超限等)。 (2) 易操作原则:要求设计的系统功能齐全,界面友好,操作方便,必要的地方进 行提示。 (3) 源程序可读性原则:为了便于其他设计,维护人员读懂代码或以后的代码修改 ,软件升级维护,即可能做好代码注释工作。 (4) 优化原则:为了达到优化的目的,合理的运用窗口,菜单,对象等的继承,自 定义用户对象,事件,函数,减少不必要的重复性代码,使程序简介明了,也方便了 将来的维护。 (5) 安全性原则:可以为该系统的用户设置用户权限。 2.3 数据结构设计 2.3.1 数据库的分析 数据库是长期存储在计算机内的,有组织的,可共享的数据集合,在一个信息管 理系统中占非常重要的地位,它能够能充分满足各种信息的输入和输出。通过收集基 本数据、数据结构以及数据处理的流程,根据对相关信息的集和统计,以及对用户所 关心和需要了解的信息的分析需要建立以下数据集: 在之前的需求分析的基础上,设计出能够满足用户需求的各种实体,以及它们的 关系。集成了来自不同用户对现实信息描述所构成的外部视图,形成全局的概念模型 ,进而可以转换成数据库的模式。 本系统的操作多是对数据库的操作,诸如基金功能模块实现添加、删除、修改和 查询等。因此数据库的结构设计是一个非常重要的环节,数据库设计的好坏将直接对 基于 JSP 的基金管理系统的研究与设计 5 应用系统的效率。好的数据库结构设计可以提高数据的完整性和一致性,也便于提高 数据存储,可使系统具有较高的响应速度,简化基于数据库的应用程序的设计实现。 本数据的具体链接会在下文进行介绍。 2.3.2 数据库的设计 数据库结构设计使用的数据库管理系统以及系统开发工具设计出数据库以及各个 数据表的结构。 本系统数据库开发汇集各种信息以供查询、存储和检索。其优点在于它能使用数 据表示图或自定义窗体收集信息。它提供数据存储库,可以使用桌面数据库文件把数 据库文件置于网络文件服务器,与其他网络用户共享数据库。本系统数据库是一种关 系型数据库工具,关系数据库是已开发的最通用的数据库。 (1) 数据库描述功能:定义数据库的全局逻辑结构(概念模式)、局部逻辑的结构(外 模式)以及其它各种数据库对象; (2) 数据库管理功能:包括系统控制、数据存储以及更新管理、数据安全性与一致 性维护; (3) 数据库查询和操作功能:能从数据库中检索住处或者改变信息; (4) 数据库建立与维护功能:包括数据写入、数据库重建、数据库结构维护、恢复 以及系统性能监视等。 此次设计根据数据的大小以及管理的便捷性选择My SQL作为数据库管理系统,使 用数据管理器创建数据库。按照前面分析的系统,设计出系统数据库中的各个数据表 如下: 得到以上的数据项和数据结构以后,就可以设计出能够满足用户需求的各种设计 ,他们之间的关系为后面的逻辑结构设计打下基础,这些实体包含各种具体信息,通 过相互之间的作用形成数据的流动。这在以后的设计中的作用十分重要。 表 2-1 客户注册表 列名数据类型可否为空说明 ClientNoInt(10)Not null 用户注册主键 ClientNameVarchar(11)Not null 用户名称 IdcardNoVarchar(10)Not null 用户 id SexVarchar(10)Not null 用户性别 PhoneVarchar(10)Not null 用户电话 AddressVarchar(10)Not null 用户地址 EmailVarchar(10)Not null 用户邮箱 HobbyVarchar(10)Not null 用户爱好 6 2 系统概要设计 表 2-2 资金账户表 列名数据类型可否为空说明 AccountNoInt (10)Not null 账户编号(主键) ClientNoInt(30)Not null 客户编号外键 FinancialamountDecimal(20)Not null 账户总额 CreateDateDate(20)Not null 创建日期 StatusVarchar(10)Not null 状态 PasswordVarchar(20)Not null 密码 表 2-3 基金信息 列名数据类型可否为空说明 FundNoInt(10)Not null 基金编号主键 FundNameVarchar (10)Not null 基金名称 PriceVarchar(20)Not null 价格 DescriptionChar(10)Not null 详解 StatusInt(20)Not null 状态 CreatedateVarchar(50)Not null 创建日期 表 2-4 基金账户信息 列名数据类型可否为空说明 FundNoInt(12)Not null 基金编号外键 FundAccountNoInt(10)Not null 基金账户编号键 AccountNoInt(30)Not null 账户编号外键 QuantityVnt(10)Not null 质量 PriceDecimal(20)Not null 价格 表 2-5 车票机票信息 列名数据类型可否为空说明 Salerno Int(11)Not null 销售人员主键 UserNameInt (10)Not null 用户名 PasswordVarchar(20)Not null 密码 RealNameVarchar(10)Not null 真实姓名 SexVarchar(10)Not null 性别 Createdate Time(20)Not null 创建日期 role Int(20)Not null 角色 2.4 运行设计 本系统运行后,首先启动初始化模块,显示界面登陆,进行注册、登陆。如果需 要进入主操作页面,可以用已注册用户登陆。运行完毕退出登陆,关闭数据库连接并 基于 JSP 的基金管理系统的研究与设计 7 退出系统。各个模块运行时间均应控制在 3-5 秒内(其中大部分时间为响应用户的动 作)。 2.5 安全保密设计 (1) 在用户登陆系统时进行身份验证,只允许合法用户进入系统。 (2) 即时的权限分配功能,允许管理员即时对用户的权限进行分配,充分保证了系 统运行的安全性。 (3) 对系统管理员和一般操作员实行功能分离,即有些功能只有系统管理员能用。 (4) 数据库的备份功能,保证了数据的安全。 8 3 功能模块具体设计 3 功能模块具体设计 3.1 用户管理页面 在此网站的设计过程中,我们拥有一个用户管理模块,拥有两个主要的功能,用 户登陆和用户注册。用户因分配有不同的密码,可以拥有不同的权限。注册过的用户 可以登陆进入主页面。 登陆或注册失败,会显示错误页面,提醒从新登陆或注册。 3.1.1 登陆页面 根据权限的不同,要进入功能模块必须进行用户名、用户编号和密码登陆,用户 根据自己的密码和账户,进行自己的权限以及进行相关的功能。 在此模块的设计中,主要是增添的按钮起作用,通过链接数据库,实现用户的登 陆和注册。如果用户输入的用户名、用户编号或密码错误则会弹出一个对话框,显示 错误。 图 3-1 登陆页面 3.1.2 注册页面设计 如果用户在查看基金的过程中发现自己想购买一些种类,则需要进行申请,若要 申请则需要注册一系列的信息,根据我们的提示进行一些注册。注册页面的功能则是 实现新用户的增加,注册成功后会弹出一个对话框,欢迎您注册成功。 在此过程中用户要保证信息的准确性这在以后的过程中将会十分如重要。如果注 册成功,用户可以进行相关功能的操作。 基于 JSP 的基金管理系统的研究与设计 9 图 3-2 注册页面 3.2 主操作界面 用户对象是各个模块的管理员,从理论上讲每个模块均有一个管理员,根据模块 的不同,每个管理员的登陆密码不同。后台是管理员进行操作的关键部分,管理员主 要是进行对数据库的操作。 3.2.1 主功能页面 主页面显示,作为管理员在进入界面后可以进行基金信息的编写以及提交,同时 对于其他的信息,管理员可以进行各个功能的实现。 图 3-3 基金账户页面 10 3 功能模块具体设计 3.2.2 增添页面 管理员在此模块更新相关的信息即销售人员、基金管理信息、客户管理信息、客 户资金账户管理信息和客户基金账户管理的增添。 管理员根据市场的需要,更新产品的清单,进行产品的输入。此过程涉及到数据 库的应用。管理员需要根据各项提示进行输入,此信息需要及时更新,方能吸引客户 就行,同时应尽可能从最大程度上为客户提供方便。另一方面尽量使页面漂亮。 图 3-4 客服增加页面 图 3-5 客服增加页面 3.2.3 删除页面 基于 JSP 的基金管理系统的研究与设计 11 管理员在此模块更新相关的信息即销售人员、基金管理信息、客户管理信息、客 户资金账户管理信息和客户基金账户管理的删除。 图 3-6 客服删除页面 3.2.4 修改页面 管理员在此模块更新相关的信息即销售人员、基金管理信息、客户管理信息、客 户资金账户管理信息和客户基金账户管理的修改。 能够依据基金信息浏览的趋势,修改的基金类型,删除不需要的。基金类型要适 合各个年龄阶层的人,适用性要强。 图 3-7 客服修改页面 3.2.5 查找页面 12 3 功能模块具体设计 管理员在此模块对相关的信息即销售人员、基金管理信息、客户管理信息、客户 资金账户管理信息和客户基金账户管理的查找。 图 3-7 客服查找页面 图 3-8 查找页面显示 以上分别介绍了几个典型的系统维护模块界面的设计,其功能各不相同,同时我 们还有其他一些页面在这里并没有进行介绍,应为这些余留页面的功能和上述介绍的 界面功能类似。 基于 JSP 的基金管理系统的研究与设计 13 4 程序的设计与开发 4.1 程序的设计思想 在上两章着重讨论了系统功能模块的设计,详细分析了每一个模块的功能,所有 计算机均由两种元素组成:代码和数据。精确的说,有些程序是围绕着“什么正在发 生”而编写,有些则是围绕“谁正在受影响”而编写的。第一种编程方式叫做“面向 过程的模型”,按这种模型编写的程序以一系列的线性步骤(代码)为特征,可被理解为 作用于数据的代码。第二种编程方式叫做“面向对象的模型”,按这种模型编写的程 序围绕着程序的数据(对象)和针对该对象而严格定义的接口来组织程序,它的特点是数 据控制代码的访问.通过把控制权转移到数据上,面向对象的模型在组织方式上有:抽 象,封装,继承和多态的好处。 面向对象程序设计的基本要素是抽象,程序员通过抽象来管理复杂性。管理抽象 的有效方法是使用层次式的分类特性,这种方法允许用户根据物理含义分解一个复杂 的系统,把它划分成更容易管理的块。例如,一个计算机系统是一个独立的对象.而在 计算机系统内部由几个子系统组成:显示器,键盘,硬盘驱动器,DVD-ROM,软盘, 音响等,这些子系统每个又由专门的部件组成。关键是需要使用层次抽象来管理计算 机系统(或其他任何复杂系统)的复杂性。 4.2 程序的具体设计 设计界面语言和运行程序代码的编写。 4.2.1 程序设计语言 (1) HTML HTML(HyperTextMark-upLanguage)即超文本标记语言,是目前网络上应用最为广 泛的语言,也是构成网页文档的主要语言。设计HTML语言的目的是为了能把存放在 一台电脑中的文本或图形与另一台电脑中的文本或图形方便地联系在一起,形成有机 的整体,人们不用考虑具体信息是在当前电脑上还是在网络的其它电脑上。我们只需 使用鼠标在某一文档中点取一个图标,Internet就会马上转到与此图标相关的内容上去 ,而这些信息可能存放在网络的另一台电脑中。 HTML文本是由HTML命令组成的描 述性文本,HTML命令可以说明文字、图形、动画、声音、表格、链接等。HTML的结 构包括头部(Head)、主体(Body)两大部分,其中头部描述浏览器所需的信息,而主体则 包含所要说明的具体内容。 (2) JavaScript 14 4 程序的设计与开发 JavaScript是一种基于对象和事件驱动并具有安全性能的脚本语言,有了JavaScript ,可使网页变得生动。使用它的目的是与HTML超文本标识语言、Java 脚本语言一起 实现在一个网页中链接多个对象,与网络客户交互作用,从而可以开发客户端的应用 程序。它是通过嵌入或调入在标准的HTML语言中实现的。 JavaScript具有很多优点:JavaScript是一种脚本编写语言,它采用小程序段的方式 实现编程,像其它脚本语言一样JavaScript同样已是一种解释性语言,它提供了一个简 易的开发过程。JavaScript是动态的,它可以直接对用户或客户输入做出响应,无须经 过JSP服务程序。它对用户的反映响应,是采用以事件驱动的方式进行的。所谓事件驱 动,就是指在主页中执行了某种操作所产生的动作,就称为“事件”。比如按下鼠标 、移动窗口、选择菜单等都可以视为事件。当事件发生后,可能会引起相应的事件响 应。JavaScript是依赖于浏览器本身,与操作环境无关,只要能运行浏览器的计算机, 并支持JavaScript的浏览器就可以正确执行。 (3) Java Java是一种面向对象语言,Java语言类似于C+语言,Java程序需要编译,它被放置 在Internet服务器上,当用户访问服务器时,Java程序被下载到本地的用户机上,由浏 览器解释运行。实际上有两种Java程序:一种Java应用程序是一个完整的程序,如JSP 浏览器。另一种Java小应用程序是运行于JSP浏览器中的一个程序。 4.2.2 数据库联接 JDBC技术是Java DataBase Connectivity的缩写,它是SUN公司提供的一种支持基本 SQL功能的通用的应用程序接口(Application Programming Interface)。它由一组用Java语 言编写的类和接口组成。通过这些类和接口,程序开发人员可以在Java语言中方便地建 立与数据库的链接,通过执行相应SQL语句,完成对不同数据库的访问。因此,开发 人员使用JDBC可以不必编写一个应用程序来访问Sybase数据库,又另外编写一个应用 程序去访问Oracle数据库,再写一个应用程序访问Microsoft的SQL Server。不但如此, 使用Java语言编写的应用程序可以在任何支持Java的平台上运行,不必在不同的平台上 开发不同的应用程序。 简单地说,JDBC能完成下列三件事: (1) 同一个数据库建立连接; (2) 向数据库建立连接; (3) 处理数据库返回的结果。 数据的应用是程序成功的关键,在此项目中涉及到许多的数据库,根据之前的经 验,数据库最好有一个人进行建立,这样有利于程序的健壮性,在此过程中,我们需 要就行数据相关属性的设定,在进行数据库的链接时要进行相关的语句搜素,进行基 本的语句搜索。 基于 JSP 的基金管理系统的研究与设计 15 数据库的应用是十分广泛的但是链接确是十分容易出错。 但是我们在平时的实践中有许多问题值得注意。 数据库连接如图 4-1 所示: 建立JDBC-ODBC桥 建立数据库连接 建立是否成功出错处理 否 是 执行SQL操作 SQL是否出错返回错误信息 返回执行结果 是 否 图 4-1 数据库连接 关于数据库的在本系统中的具体应用代码参见附录 II 4.3 程序中遇到的问题 JSP代码中会存在许多问题。 4.3.1 关于 JSP 乱码问题的解决 (1) 最基本的乱码问题。 举例:这个乱码问题是最简单的乱码问题,一般都会出现,就是页面编码不一致 导致的乱码。 中文问题 16 4 程序的设计与开发 基金账户 以上有三个地方的编码错误。 第一个地方的编码格式为JSP文件的存储格式。My Eclipse会根据这个编码格式保 存文件。并编译JSP文件,包括里面的汉字。第二处编码为解码格式。因为存为UTF-8 的文件被解码为iso8859-1,这样 如有中文肯定出乱码。也就是必须一致。而第二处所 在的这一行,可以没有。缺省也是使用iso8859-1的编码格式。所以如果没有这一行的 话,“基金账户”也会出现乱码,必须一致才可以。 第三处编码为控制浏览器的解码 方式。如果前面的解码都一致并且无误的话,这个编码格式没有关系。有的网页出现 乱码,就是因为浏览器不能确定使用哪种编码格式。因为页面有时候会嵌入页面,导 致浏览器混淆了编码格式,出现了乱码。 (2) 表单使用Post方式提交后接收到的乱码问题 这个问题也是一个常见的问题。这个乱码也是tomcat的内部编码格式iso8859-1在捣 乱,也就是说post提交时,如果没有设置提交的编码格式,则会以iso8859-1方式进行提 交,接受的JSP却以utf-8的方式接受导致乱码,接受参数时进行编码转换 Stringstr=ne wString(request.getParameter(“something“).getBytes(“ISO-8859-1“),“utf-8“);这样的话, 每一个参数都必须这样进行转码。很麻烦。但确实可以拿到汉字。在请求页面上开始 处,执行请求的编码代码, request.setCharacterEncoding(“UTF-8“),把提交内容的字符 集设为UTF8。这样的话,接受此参数的页面就不必在转码了。直接使用String str = request.getParameter (“something“);即可得到汉字参数。但每页都需要执行这句话。这 个方法也就对post提交的有效果,对于get提交和上传文件时的enctype=“multipart/form-d ata“是无效的。稍后下面单独对这个两个的乱码情况再进行说明。为了避免每页都要写 request.setCharacterEncoding(“UTF-8“),建议使用过滤器对所有JSP 进行编码处理。 (3) 表单get提交方式的乱码处理方式。 如果使用get方式提交中文,接受参数的页面也会出现乱码,这个乱码的原因也是t omcat的内部编码格式iso8859-1导致。 Tomcat会以get的缺省编码方式iso8859-1对汉字进行编码,编码后追加到url,导致 接受页面得到的参数为乱码。解决办法: 方案一:使用上例中的第一种方式,对接受到的字符进行解码,再转码。方案二 :Get走的是url提交,而在进入url之前已经进行了iso8859-1的编码处理。要想影响这个 编码则需要server.xml的Connector节点增加useBodyEncodingForURI=“true“属性配置,即 可控制tomcat对get方式的汉字编码方式,上面这个属性控制get提交也是用request.setCh aracterEncoding (“UTF-8“)所设置的编码格式进行编码。所以自动编码为utf-8,接受页 基于 JSP 的基金管理系统的研究与设计 17 面正常接受就可以了。但我认为真正的编码过程是,tomcat又要根据里面所设置U RIEncoding=“UTF-8”再进行一次编码,但是由于已经编码为utf-8,再编码也不会有变 化了。如果是从url获取编码,接受页面则是根据URIEncoding=“UTF-8”来进行解码的 。 (4) 上传文件时的乱码解决 上传文件时,form表单设置的都是enctype=“multipart/form-data“。这种方式以流方 式提交文件。如果使用apach的上传组件,会发现有很多乱码想象。这是因为apach的先 期commons-fileupload.jar有bug,取出汉字后进行解码,因为这种方式提交,编码又自 动使用的是tomcat缺省编码格式iso-8859-1。但出现的乱码问题是:句号,逗号,等特 殊符号变成了乱码,汉字如果数量为奇数,则会出现乱码,偶数则解析正常。 解决方式:下载commons-fileupload-1.1.1.jar 这个版本的jar已经解决了这些bug。 但是取出内容时仍然需要对取出的字符进行从iso8859-1到utf-8转码。已经能得到正常 所有汉字以及字符。5 Java代码关于url请求,接受参数的乱码url的编码格式,取决于上 面所说的URIEncoding=”UTF-8“。如果设定了这个编码格式,则意味着所有到url的汉 字参数,都必须进行编码才可以。否则得到的汉字参数值都是乱码,例如一个链接 Re sponse.sendDerect(“/a.JSP?name=基金账户”);而在a.JSP里面直接使用String name = re quest.getParameter(“name“);得到的就是乱码。因为规定了必须是utf-8才可以,所以, 这个转向应该这样写:Response.sendDerect(“/a.JSP?name=URLEncode.encode(“基金账 户”,“utf-8”);才可以。如果不设置这个参数URIEncoding=“UTF-8”,会怎么样呢? 不设置则就使用了缺省的编码格式iso8859-1。问题又出来了,第一就是参数值的个数 如果是奇数个数,则就可以正常解析,如果使偶数个数,得到最后字符就是乱码。还 有就是如果最后一个字符如果是英文,则就能正常解析,但中文的标点符号仍出现乱 码。权宜之计,如果您的参数中没有中文标点符号,则可以个英文符号来解决乱码问 题,得到参数后再去掉这个最后面的符号。也可以凑或使用。 18 5 程序的测试与维护 5 程序的测试与维护 5.1 测试的重要性及目的 软件测试和维护分为以下几个方面。 5.1.1 测试的重要性 软件的测试在软件生命周期中占据重要的地位,在传统的瀑布模型中,软件测试 学仅处于运行维护阶段之前,是软件产品交付用户使用之前保证软件质量的重要手段 近来,软件工程界趋向于一种新的观点,即认为软件生命周期每一阶段中都应包含测 试,从而检验本阶段的成果是否接近预期的目标,尽可能早的发现错误并加以修正如 果不在早期阶段进行测试,错误的延时扩散常常会导致最后成品测试的巨大困难事实 上,对于软件来讲,不论采用什么技术和什么方法,软件中仍然会有错。采用新的语 言、先进的开发方式、完善的开发过程,可以减少错误的引入,但是不可能完全杜绝 软件中的错误,这些引入的错误需要测试来找出,软件中的错误密度也需要测试来进 行估计。测试是所有工程学科的基本组成单元,是软件开发的重要部分。自有程序设 计的那天起测试就一直伴随着。统计表明,在典型的软件开发项目中,软件测试工作 量往往占软件开发总工作量的 40以上。而在软件开发的总成本中,用在测试上的开 销要占 30到 50。如果把维护阶段也考虑在内,讨论整个软件生存期时,测试的成 本比例也许会有所降低,但实际上维护工作相当于二次开发,乃至多次开发,其中必 定还包含有许多测试工作。 在实践中,软件测试的困难常常使人望而却步或敷衍了事,这是由于对测试仍然 存在一些不正确的看法和错误的态度,这包括:认为测试工作不如设计和编码那样容 易取得进展难以给测试人员某种成就感;以发现软件错误为目标的测试是非建设性的 ,甚至是破坏性的,测试中发现错位是对责任者工作的一种否定;测试工作枯燥无味, 不能引起人们的兴趣;测试工作是艰苦而细致的工作;这些观点对软件测试工作是极 为不利的,必须澄清认识、端正态度,才可能提高软件产品的质量。 5.1.2 测试的目的 如果测试的目的是为了尽可能多地找出错误,那么测试就应该直接针对软件比较 复杂的部分或是以前出错比较多的位置。 (1) 软件测试是为了发现错误而执行程序的过程; (2) 测试是为了证明程序有错,而不是明程序无错误; (3) 一个好的测试用例是在于它能发现至今未发现的错误; (4) 一个成功的测试是发现了至今未发现的错误的测试。 基于 JSP 的基金管理系统的研究与设计 19 这种观点可以提醒人们测试要以查找错误为中心,而不是为了演示软件的正确功 能。但是仅凭字面意思理解这一观点可能会产生误导,认为发现错误是软件测试的唯 一目的,但是事实并非如此。 首先,测试并不仅仅是为了要找出错误。通过分析错误产生的原因和错误的分布特征, 可以帮助项目管理者发现当前所采用的软件过程的缺陷,以便改进。同时,这种分析 也能帮助我们设计出有针对性地检测方法,改善测试的有效性。其次,没有发现错的 测试也是有价值的,完整的测试是评定测试质量的一种方法。 5.2 测试的步骤 与开发过程类似,测试过程也必须分步骤进行,每个步骤在逻辑上是前一个步骤 的继续。大型软件系统通常由若干个子系统组成,每个子系统又由若干个模块组成。 因此,大型软件系统的测试基本上由下述几个步骤组成: (1) 模块测试 在这个测试步骤中所发现的往往是编码和详细设计的错误。 (2) 系统测试 在这个测试步骤中发现的往往是软件设计中的错误,也可能发现需 求说明中的错误。 (3) 验收测试 在这个测试步骤中发现的往往是系统需求说明书中的错误。 5.3 测试的主要内容 为了保证测试的质量,将测试过程分成几个阶段,即:代码审查、单元测试、集成 测试、确认测试和系统测试。 (1) 单元测试 单元测试集中在检查软件设计的最小单位模块上,通过测试发现实现该模块的 实际功能与定义该模块的功能说明不符合的情况,以及编码的错误。 (2) 集成测试 集成测试是将模块按照设计要求组装起来同时进行测试,主要目标是发现与接口 有关的问题。如一个模块与另一个模块可能有由于疏忽的问题而造成有害影响;把子 功能组合起来可能不产生预期的主功能;个别看起来是可以接受的误差可能积累到不 能接受的程度;全程数据结构可能有错误等。 (3) 确认测试 确认测试的目的是向未来的用户表明系统能够像预定要求那样工作。经集成测试 后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排 除了,接着就应该进一步验证软件的有效性,这就是确认测试的任务,即软件的功能 和性能如同用户所合理期待的那样。 (4) 系统测试 20 5 程序的测试与维护 软件开发完成以后,最终还要与系统中其他部分配套运行,进行系统测试。包括 恢复测试、安全测试、强度测试和性能测试等。单独对系统的测试主要从以下几入手 : 功能测试:测试
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江苏省苏州市葛江中学2026届九年级英语第一学期期末达标测试试题含解析
- 华山医院教学体系建设与实践
- 安徽省当涂县2026届九上化学期中考试模拟试题含解析
- 广联达教育培训
- 涉企收费迎检汇报
- 广东省深圳市南山区南山实验学校2026届九年级化学第一学期期中教学质量检测试题含解析
- 学院就业工作总结报告
- 组织部工作总结
- 江苏省无锡市南长实验中学2026届化学九上期中达标检测试题含解析
- 2026届广东省中学山市黄圃镇马新初级中学九年级化学第一学期期中质量检测试题含解析
- 2025年时事政治考试100题及答案
- 2025年全国中小学校党组织书记网络培训示范班在线考试题库及答案
- 2025全国农业(水产)行业职业技能大赛(水生物病害防治员)选拔赛试题库(含答案)
- 疥疮防与治课件
- 饮食营养与健康课件
- 地下车库系统环氧地坪施工组织设计
- 2022年浙江省公务员录用考试《申论》试卷及参考答案
- 医共体成员单位人力资源工作制度
- YY∕T 0953-2020 医用羧甲基壳聚糖(高清正版)
- 生物医学工程导论课件
- 宠物市场调研报告
评论
0/150
提交评论