银行账户管理系统.docx
文献综述一、概述 ATM自动取款机是由计算机控制的持卡人自我服务型的金融专用设备。ATM是英文Automatic Teller Machine的缩写。ATM是最普遍的自助银行设备,可以提供最基本的银行服务之一,即出钞交易,有些全功能的产品还可以提供信封存款业务。在ATM自动取款机上也可以进行账户查询、修改密码和转账的业务。同时在制作这个系统的过程中也应用了数据库的知识,这个相对于想从事软件开发的人来说是比较重要的内容,这个也是本次设计的重点知识,同时数据库链接是必须要学会的,因为这个是最核心的内容,培养自己坚实的逻辑表达能力和沟通能力,和培养自己良好的文案能力,要求掌握ATM取款机的具体工作原理以及java简单系统的设计方法。二、内容(一) ATM的研究现状众所周知随着信息时代科技的飞速发展和随着全球金融行业的兴起,使用ATM取款机、计算机信息技术以及计算机科学技术的发展,给人们的生活带来了翻天覆地的变化,同时这些技术在人们生活中的运用,随着科学技术的进步,经营方式的转变,处理信息系统的内容和形式也在发生变化。当前,以计算机和通信技术为基础的信息系统正处在蓬勃发展的时期,ATM取款系统可充分利用网络技术和数据库技术的发展,形成一种全新的运作方式。随着因特网的形成和发展,基于网络技术的信息系统除了它传统的功能外,实现了特定地方刷卡消费等。不仅提高了银行的业务处理能力,而且大大的节省了人们取钱所花费的时间和价值;并且在有效防止了一些非法的业务操作,对于一些复杂的信息,就能够充分的发挥它们的优越性。据悉,中国最近几年ATM增长速度维持在10以上,而世界其它国家ATM增长率大致为3。现在,中国已经成为全球最大的ATM市场。但是,市场研究机构同时认为,我国今后几年的发展势头将较过去几年慢下来,不再维持过去两位数的高增长率,因为大城市的ATM拥有量已达一定程度,而二线城市的ATM则需要一定的配套设施方能开始高速度发展。目前,国内ATM最多只有七八种功能,相对于其它国家,如新加坡,功能确实少一些。新加坡的ATM交易功能多达40多种。在发达国家,多种新技术应用于ATM,使ATM使用更加便捷,功能也更多。持卡人无需携带银行卡,虹膜识别、手纹识别ATM可通过识别客户独有的生物特征进行交易。借助无线通ATM,持卡人可以远程在手机上先行操作交易,并在ATM上按最后一个交易指令。另外,有的ATM可以打印彩色地图、销售电影票和邮票等。从技术上讲,这些最先进的ATM随时可以提供给中国的商业银行。但ATM是一个终端,其功能需要银行主机的配合。而且中国银行业正对外资银行加速开放,进入中国的外资银行今后一定会将最新的ATM带入中国。(二)ATM取款机系统的影响ATM取款机诞生可以说是世界金融行业的一大进步,也是历史性的转折点。ATM自动取款机不仅能提高了银行的业务处理能力,还能大大的节省人们取钱所花费的时间和价值;并且在有效防止了一些非法的业务操作,对于一些复杂的信息,就能够充分的发挥它们的优越性。ATM系统对金融业的变革产生了和正在产生着深远的影响。从现代金融业新概念来看,ATM系统就是电子信息技术在金融业金融管理的一种应用。它避免了对于用户的信息资料、以及资金统计等用人工办理。数据信息处理工作量大,繁琐,数据处理手工操作,工作量大,工作时需实时认真办理,一但出现错误将带来很大的损失。从而解决了用户信息和资金信息的繁杂问题,对于ATM取款系统数据的统计和核实等都是采用卡号进行核对的,进而实现了数据的准确性、完整性、及时性,避免了工作人员和管理员工作时间一长,再进行查询,就得在众多的资料中翻阅、查找了,造成查询费时、费力。同时也得用户可以安全的进行操作,便捷,快速的进行取款以及完成一些商业上的交易,大大提高办公效率,能够及时、准确、有效的帮用户办理各种繁琐的手续,也减缓了银行工作人员的压力。(三)ATM自动取款机系统的展望近年来我国信息产业发展迅速,手工管理方式在银行帐目管理等需要大量事务处理的应用中已显得不相适应,采用IT技术提高服务质量和管理水平势在必行。目前,对外开放必然趋势使银行业直面外国银行巨头的直接挑战,因此,银行必须提高其工作效率,改善其工作环境。这样,帐户管理的信息化也势在必行。另外,ATM需要的是更高的人性化和更强大的中间业务,现在的ATM都是穿墙的或者是大堂的,如果要重新设计的话,可以设计更轻便的但是又安全的ATM,比如说可以放在汽车上,火车上,甚至是飞机上。将来的ATM应该不是按键式的,可能会发展成语音操作式,只要人机语音对话就能实现,这对一些残障人士更有帮助。(四)开发语言和开发平台的选择与介绍本文利用面向对象开发的方法,联系实际ATM应用界面,采用MyEclipse开发工具,以windows7操作系统、MySql小型数据库为后台以及利用java语言和通过实现JDBC数据库的连接开发出了一套模拟自动取款机系统。Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaSE, JavaEE, JavaME)的总称。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权政策(本词条“授权政策”),它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate。MyEclipse 是一个十分优秀的用于开发Java, J2EE的 Eclipse 插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。MyEclipse目前支持Java Servlet,AJAX, JSP, JSF, Struts,Spring, Hibernate,EJB3,JDBC数据库链接工具等多项功能。可以说MyEclipse几乎囊括了目前所有主流开源产品的专属eclipse开发工具。3、 总结本文利用java语言面向对象、跨平台、分布应用等特点,采用MyEclipse开发工具,以windows7操作系统、MySql数据库为后台开发出了一套自动取款机系统,基本上实现了账户查询、修改密码、转账和取款等业务。随着计算机技术飞速发展及其应用领域的扩大,特别是计算机网络和电子商务的发展,极大地改变了商业银行传统的经营和管理模式。能够为客户提供方便、快捷、安全的服务,也能有效降低银行的运营成本,这是银行管理系统追求的目标。目前,对于现代化银行运营的要求是客户可以实现随时随地的业务交易,银行职员可以进行高效合理的工作管理,实现银行业务电子化。24、 参考文献1 孙卫琴.Java 面向对象程序设计M. 北京:电子工业出版社,2009.72 王国辉, 吕海涛. Java数据库系统开发案例精选M. 北京:人民邮电出版社3 陈国君, 陈锡祯. Java2程序设计基础M. 北京: 清华大学出版社4 袁海燕. Java实用程序设计100例M. 北京: 人民邮电出版社5 朱站立、沈伟. Java程序设计实用教程M. 电子工业出版社6 印旻编、许伟. Java2从入门到精通M.北京:清华大学出版社7 杨树林,胡洁萍. Java语言最新实用案例教程. 北京:清华大学出版社,2010.7: 1412328 李刚等. Java数据库技术详解. 北京:化学工业出版社,2010.79 美Liang Y D.Java语言程序设计.王镁,等译. 北京:机械工业出版社,2005.10 美Kathy Walrath 等.JFC Swing标准教材. 北京:电子工业出版社,2005.11 郑莉,王言行,马素霞. Java语言程序设计. 北京:清华大学出版社,2006.12 朱喜福,林建民,唐永新. Java程序设计. 北京:人民邮电出版社,2001.13 朱喜福. Java程序设计. 北京:清华大学出版社,2005.5摘要:21世纪是催人奋进的时代,科学技术飞速发展,金融业ATM取款机的诞生可以说是世界金融行业中的一大进步,更是其发展历史性的转折点。本文以实际提款机应用为背景,阐述了系统开发过程的开发方法、系统分析和一般步骤。全文共分为ATM系统综述、ATM系统的开发方法、系统分析、系统设计、系统实现和系统维护与评价七个部分,利用JAVA语言强大功能,并具有面向对象开发等的特点,联系实际ATM应用界面,采用MyEclipse开发工具,以windows7操作系统、MySQL数据库为后台开发出了一套自动取款机系统,基本上实现了账户查询、修改密码、转账和取款等业务。针对这一系列问题,我们利用JAVA语言在MyEclipse下设计了这么一个系统,使得用户可以安全的进行操作,便捷,快速的进行取款以及完成一些商业上的交易,大大提高办公效率,能够及时、准确、有效的帮用户办理各种繁琐的手续,也减缓了银行工作人员的压力。关键字:ATM Java MyEclipse MySQL Abstract:The 21st century is the era of inspiring. With the rapid development of science and technology, the birth of the ATM cash machines in the financial industry deserves to be called a tremendous progress and a historic turning point in the world's financial industry .This paper described the system development process,system analysis and general steps of the development methodology.This paper is composed by the ATM system, the ATM system development methodology, system analysis, system design, system implementation and system maintenance, and evaluation .Take good advantage of the powerful features and the characteristics of object-oriented development of the JAVA programming language , using MyEclipse development tools, window7 operating system, MySql database as a background to develop an automatic teller machine system, and basically realized account inquiries, modify password, transfers and withdrawals business.For this series problem, we use JAVA language to design such a system in the the MyEclipse environment so that the user can operate safely and conveniently.Besides, not only it can fasten the completion of commercial transactions, but also greatly improving the efficiency of the office,.Most important of all ,ATM can timely and accurate effectively help users handle the cumbersome procedures, and also slow down the pressure of the bank staff.Key words: ATM Java MyEclipse MySQL目 录目 录11. ATM系统开发方法11.1系统方法概述11.2本系统使用方法概述22. 系统分析22.1系统初步调查22.2可行性研究22.3系统详细调查及提出33. 系统设计63.1 开发环境63.2 系统总体结构设计73.3 系统详细设计93.3.1 数据库设计93.3.2 界面模块设计104. 系统实现184.1程序设计与调试184.1.1程序设计184.1.2程序调试194.2 试运行195. 系统维护196. 系统评价207. 结束语20参考文献22附 件(论文源代码)23附一 主界面23附二 登陆界面24附三 功能菜单界面26附四 修改密码界面27附五 结束对话框界面30附六 退出信用卡界面30附七 查询余额界面31附八 取款界面32附十 查询服务界面34附十一 查询用户信息界面35附十二 转账界面36致谢391. ATM系统开发方法1.1系统方法概述软件开发方法是一种使用早已定义好的技术集及符号表示习惯来组织软件生产的过程。开发目标是在规定的投资和时间内,开发出符合用户需求的高质量的软件。任何系统均有其产生、发展、成熟、消亡或更新换代的过程。这个过程称为系统的生命周期。系统生命周期法提供的思路、逻辑、技能、工具与工作规范,是系统开发、处理管理信息系统建设中各类实际问题的重要基础,对复杂系统的建设具有重要的指导意义。系统开发是管理信息系统建设中工作任务最为繁重,也是最重要的一个阶段。从项目开发到结束的整个过程,称为系统开发的生命周期。系统开发的生命周期一般分为系统分析、系统设计和系统实施。结构化生命周期法是一种面向数据流的开发方法。该方法简单实用、应用较广、技术成熟,方法的指导思想是自顶向下、逐步求精,基本原则是能动的分解与抽象,特别适合于数据处理领域的问题,随着开发项目规模的变化,该方法也就暴漏出了它的缺点:(1)对于规模大、特别复杂的项目不太适应 (2)难于解决软件重用问题 (3)难于适应需求变化问题,难于彻底解决维护问题。到了90年代,主流的开发方法是面向对象的开发方法,它的基本出发点是尽可能的按照人类认识世界的方法和思维方式来分析和解决问题。面向对象方法支持软件重用和原型概念,提高了系统开发的效率,因而得到了ATM系统各计算机界的极大关注。该方法包括面向对象分析、面向对象设计、面向对象实现。系统开发工作的自动化、计算机化是提高系统开发效率与质量的重要途径。计算机辅助软件工程(简记为CASE)也是当前信息系统领域和计算机应用领域的热门话题。CASE技术的目标是实现系统开发生命周期内各阶段工作基于计算机的自动化。这将导致系统开发工作的根本变化。1.2本系统使用方法概述比较各种开发方法的特点,结合银行取款系统的实际情况,整个系统采用结构化生命周期法,以原型法和面向对象的开发方法作为辅助,即系统总体上采用结构化生命周期法进行系统分析和系统设计,系统实施等步骤采用面向对象方法。本系统开发工具使用的是基于 Java 的可扩展开发平台的MyEclipse。2. 系统分析系统分析是管理系统开发的起始阶段,也是MIS(管理信息系统)开发工作中最重要的一环。系统分析阶段的主要活动有:系统初步调查、可行性研究、系统详细调查、新系统逻辑方案的提出。系统分析的目标是明确系统开发的目标和用户信息需求,提出系统的逻辑方案。为系统设计做好准备。2.1系统初步调查系统的初步调查是系统分析阶段的第一项活动,也是系统开发的第一项活动,初步调查的主要目标是从系统分析人中和管理人员的角度看新系统开发有无必要和可能。通过亲身体验总结各银行ATM提款机界面流程,得到本系统开发的主要流程界面(主要功能取款、转账、查询、修改密码等)。并决定亲自开发取款机系统,测试自己水平。2.2可行性研究可行性研究(Feasibility Study),是指在调查的基础上,通过市场分析、技术分析、财务分析和国民经济分析,对各种投资项目的技术可行性与经济合理性进行的综合评价。可行性研究的基本任务,是对新建或改建项目的主要问题,从技术经济角度进行全面的分析研究,并对其投产后的经济效果进行预测,在既定的范围内进行方案论证的选择,以便最合理地利用资源,达到预定的社会效益和经济效益。 可行性研究必须从系统总体出发,对技术、经济、财务、商业以至环境保护、法律等多个方面进行分析和论证,以确定建设项目是否可行,为正确进行投资决策提供科学依据。项目的可行性研究是对多因素、多目标系统进行的不断的分析研究、评价和决策的过程。它需要有各方面知识的专业人才通力合作才能完成。可行性研究不仅应用于建设项目,还可应用于科学技术和工业发展的各个阶段和各个方面。可行性研究的目的就是用最小的代价在最短的时间内确定该软件项目是否能够开发,是否值得去开发。实质上就是进行一次简化、压缩了的需求分析、设计过程。可从以下三个方面分析研究每种解决问题的可行性:a.技术可行性:对项目的功能、性能、限制条件进行分析,确定在现有的资源条件下项目是否能实现。(开发的风险、资源的有效性、技术)b.社会可行性:要开发的项目是否存在任何侵犯、妨碍等责任问题,要开发项目的运行方式在用户组织内是否行得通,现有管理制度、人员素质、操作方式是否可行。c.经济可行性:进行开发成本的估算以及了解得到效益的评估,确定要开发项目是否值得投资开发。对银行业来说,是靠存款贷款之间的差额来生存的,所以要尽可能的拉拢更多的客户使用本行,ATM取款机是为了能让为客户更便捷的服务,从而更具有吸引力。从银行的角度出发还是非常愿意把一部分资金投入到这方面的。2.3系统详细调查及提出系统详细调查是在可行性研究的基础上进一步对现行系统进行全面、深入的调查和分析,弄清现行系统运行状况,发现其薄弱环节,确保新系统比原系统更有效。详细调查的重点在于对系统的内部情况更详细和具体的了解,从而可以提供在新系统建设时改进或更换的内容。明确用户的信息需求,明确新系统的逻辑功能。主要工作是对用户需求进行进一步调查分析,创建新系统的逻辑模型。逻辑模型主要以数据流程图和数据字典为主要描述工具。一般登陆模块只输入账号、密码,当然在实际应用中没有要求用户输入账号,这是因为在磁卡上有个感应区,设计此模块时加上了验证码。银行帐目管理系统是针对银行帐目的日常管理而设计。银行操作系统不仅要求操作方便而且要求界面简洁,它需要实现帐户管理,用户查询和查询统计等几个功能。其中帐目管理又包含了开户、存款、取款和修改信息的功能。用户可以通过不同的方式来查询需要的信息。通过该系统的设计实现,使银行部门更好地进行业务管理,为客户提供更加优质的服务。通过仔细调查得以下功能图和业务流程图:图3-1 功能图ATM取款机系统退出模块功能模块登入模块退卡查卡信息转账修改密码取款查询余额验证码输入账号输入密码 该系统主要实现银行卡用户的存取款,以及进行一些简单的查询和转账业务,同时能够在系统里面进行客户密码的修改,实现简单的机器与客户交互。图3-2 业务流程图:待机界面(按任意键进入登录界面)登录界面(卡号、密码、验证码、取消等选项)密码错误,请从新输入!选择界面(查询、取款、转帐、修改密码、取消)修改密码转帐取款查询交易完成点击退出谢谢使用,再见!3. 系统设计系统设计阶段的主要目的是将系统分析所提出的反映用户信息需求的系统逻辑方案转换成可以实施的基本计算机(ATM取款机)与通信系统的物理(技术)方案。系统设计主要包括系统总体结构设计和详细设计。系统设计的依据主要有系统分析的成果、现行技术、用户需求、系统运行环境。3.1 开发环境(1)、软件开发工具的选择本系统采用Java作为编程语言,采用MyEclipse软件开发环境,MyEclipse对数据库应用的强大支持,使数据库应用开发功能更强大,控制更灵活,编译后的程序运行速度更快。MyEclipse企业级工作平台(MyEclipse Enterprise Workbench,简称MyEclipse)是对EclipseIDE的扩展,利用它可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSF,CSS,Javascript,SQL,Hibernate。(2)、数据库管理系统的选择由于本次设计所采用的是MySql 小型数据库,这种数据库用来存储少量数据,在设计和实施上有很大的优势,根据之前所做的功能分析,以及ATM柜员机自身所具备的功能。MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司,在2008年1月16号被Sun公司收购。MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。 (3)、开发平台的选择windows 平台以其全新的界面简单快捷的操作方式而成为软件开发的趋势。根据本系统的运行环境和实际情况,选择Windows7(旗舰版)作为开发测试和运行的平台。3.2 系统总体结构设计系统总体结构是指整个系统由哪些部分组成,以及各部分在物理上、逻辑上的相互关系,包括硬件部分和软件部分,该设计包括:系统总体布局方案的确定、软件系统总体结构的设计、计算机硬件方案的选择和设计、数据存储的总体设计。根据业务流程图转化为软件的体系结构,进而用软件结构图建立物理模型,得系统活动图,如下:图4-1系统结构图:图4-2系统活动图:3.3 系统详细设计详细设计的实现根据结构程序设计原理,将每个模块的功能用相应的标准语句表示出来。包括代码设计、数据库设计、用户界面设计、处理过程设计。代码设计是指把系统管理对象数字化或字符化,便于计算机的处理。遵照代码设计的原则:合理性、简明性、系统性、稳定性、可扩充性、标准化、便于识别和记忆。数据库设计指对系统所采用的数据模式、子模式、应用程序、数据库等根据用户的具体要求进行分析和设计。它也是管理信息系统设计的重要组成部分。数据库设计的基本原则是尽可能提高数据组织的相对独立性,简化其结构,即用规范化方法设施数据存储的结构,提高数据的可维护性、完整性、一致性。3.3.1 数据库设计通过收集和分析用户需求,确定了数据库要保存的信息,我将此次数据库设计为二个如下所示表:1、客户表(user)CardID字段信息字段名称类型宽度小数位数空特性姓名userNamevarchar10N性别userSexvarchar2N身份证号userIDvarchar10N卡号userCardNovarchar10N图 4-3用户信息设计表2、账户表(card)CardID字段信息字段名称类型宽度小数位数空特性卡号cardNovarchar10N账户余额cardBalancedecimal102N密码cardPassWordvarchar6N图 4-4 账户信息设计表3.3.2 界面模块设计用户界面设计目前已成为评价软件质量的一条重要指标,所谓用户界面是指软件系统与用户交互的接口,通常包括输入设计、输出设计、人机对话的界面设计。图 4-5登录模块主要代码如下: public void actionPerformed(ActionEvent e) if (e.getActionCommand() = "中文") this.setVisible(false);new Client00("输入密码"); else if (e.getActionCommand() = "英文") String inputValue = JOptionPane.showInputDialog("Please input a value");/监听是选择中文输入还是英文输入public class ATM public static void main(String args) new Client("ATM自动取款系统");当插入现金卡之后出现界面,系统出现选择中英文的登入方式,点击按钮之后(中文)出现后对话框: 图 4-6登录界面登录模块依然采用的是密码验证的方式,需要用户输入卡号、密码和验证码然后点击确认进行验证,程序将根据输入卡号查找密码,第一没有找到提示,找到继续下一步,在这里我用了验证码方式,输入正确继续,程序系统将根据卡号调用后台数据库查找与卡号对应的密码并与用户输入的密码相对比。密码正确继续,否则当输入的次数达到三次时,系统将提示你与前台服务员取得联系。第二如果没有找到,提示输入账号错误。主要代码如下:(1)从后台获得账号信息,用于与用户输入的账号密码对照 Class.forName("com.mysql.jdbc.Driver");/加载驱动Connection con = DriverManager.getConnection(url, "root", null);/建立连接Statement sql = con.createStatement();/获得一个statement对象String ql = panel1.textB.getText();/获取账号ResultSet rs = sql.executeQuery("select cnima from card where cno="+ ql + "");/根据账号搜索密码,获得结果集(2) 系统生成验证码并验证用户输入的验证码public void actionPerformed(ActionEvent e) char passwords = panel1.textA.getPassword();String password = new String("112626");/ 设置账号123456789的初始密码为112626,每输入一次都有提示,在连续输入三次不正确后系统自动退出。if (e.getActionCommand().equals("确定")if(panel1.textC.getText().equals(panel1.label3.getText() heshi(); else JOptionPane.showMessageDialog(frame, "你输入的验证码有误,请重新输入。");else if (e.getActionCommand() = "取消") this.setVisible(false);new Client08("");/当输入验证码有误是弹出一个提醒窗口 图 4-7首页设计 首页的设计主要是设计了查询余额、取款、转账、密码更改及退出按钮等ATM的一些标准操作界面。 主要代码如下: (1) 本界面设置了五个按钮 button1=new JButton("查询"); button2=new JButton("取款"); button3=new JButton("转账"); button4=new JButton("退出"); button5=new JButton("修改密码"); (2)点击以上五个按钮可以触发进入相应操作界面 public void actionPerformed(ActionEvent e) if(e.getActionCommand()="取款") this.setVisible(false); new Client02("请选择取款金额"); else if(e.getActionCommand()="查询") this.setVisible(false); new Client06("查询服务"); else if(e.getActionCommand()="修改密码") this.setVisible(false); new Client05("修改密码服务"); else if(e.getActionCommand()="转账") this.setVisible(false); new Client04("用户转账服务"); else if(e.getActionCommand()="退出") this.setVisible(false); new Client08(""); 图 4-8查询模块 在此模块中,将通过用户所使用的账户编号来进行余额的查询,将显示账户的实际余额,点击“查询”按钮,通过按钮的Action方法进行方法调用,就可以实现查询的功能并把查询到的账户余额显示到界面上。当用户点击“返回”时,程序返回到初始主界面。 图 4-9 查询卡信息模块 此功能用来显示持卡人的基本信息包括姓名、性别、身份证、卡号等,点击查询按钮后系统将根据与输入的卡号相一致的字段信息,显示输出在该页面上。当点击取消按钮时系统将返回到初始主界面。 图 4-10 修改密码模块 此模块需要用户输入旧密码后,两次输入新密码进行确认,然后,点击确定,修改密码,成功后给出提示信息,其中考虑到一些用户的输入错误问题,我做出了一些异常的判断和处理,空输入,输入两次新密码不匹配和原密码不正确等问题。修改更新密码的完成仍然依靠按钮控件的Action事件完成。 修改密码主要代码如下: if(new String(passwords1).equals(new String(passwords2) this.setVisible(false); JOptionPane.showMessageDialog(frame," 输入新密码和和原密码一致,请重新输入。"); panel10.text1.setText(""); panel10.text2.setText(""); panel10.text3.setText(""); return; if(new String(passwords2).equals(new String(passwords3) this.setVisible(false); JOptionPane.showMessageDialog(frame," 正修改原密码,请等待"); updateM(); / 程序根据输入原密码,查找数据库表格user进而修改密码数据表数据。 else JOptionPane.showMessageDialog(frame," 两次输入新密码不一致,请重新输入。"); panel10.text2.setText(""); panel10.text3.setText(""); / if(panel10.text1.getText().equals("")|panel10.text2.getText().equals("")|panel10.text3.getText().equals("") JOptionPane.showMessageDialog(frame," 请输入原密码及新密码!"); return; else if(new String(passwords1).equa