凭证管理及报表分析系统_第1页
凭证管理及报表分析系统_第2页
凭证管理及报表分析系统_第3页
凭证管理及报表分析系统_第4页
凭证管理及报表分析系统_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.:.;本科毕业论文(科研训练、毕业设计)题 目:凭证管理及报表分析系统姓 名:陈肖如学 院:软件学院系:软件工程专 业:软件工程年 级:级学 号:指点教师校内:史亮 职称:讲师指点教师校外:王磊 职称:工程师年 月 日凭证管理及报表分析系统摘要我国参与WTO以后,我国金融业将面临国外的竞争,也给中国金融业带来了压力,如何利用更加科学和高效的手段对运营数据进展分析,是商业银行业务开展的需求。在此背景下,他们开发了凭证管理及报表分析系统。该系统采用JEE架构,运用了MVC方式,并以目前较为流行的基于JEE的运用程序框架Struts作为开发框架,尝试了JEE在信息管理领域和数据统计领域中的运用。凭

2、证管理及报表分析系统是基于Web的凭证及报表的生成打印系统。该系统可以协助银行管理人员管理特种转帐明细记录,并从中获取有价值的统计信息,从而到达管理分析和决策支持的目的。关键词 JEE Struts B/S架构 MVC模型 JavaBeanVoucher management and report analysis systemAbstract After joining to WTO, China will face the competition to finance industry from overseas, thus, our commercial banks must think

3、 about how to analyze the business data more scientifically. With that background, we develop the Voucher management and report analysis system. Trying to use JEE in information management domain and data statistics domain, the system use JEE structure, the MVC pattern and the Struts framework. that

4、 system will help the bank manager manage the dealing record, and get valuable information from them.Keyword JEE Struts B/S MVC JavaBean目录中文摘要Abstract TOC o - h z u HYPERLINK l _Toc 第章 绪 论 PAGEREF _Toc h HYPERLINK l _Toc . 引言 PAGEREF _Toc h HYPERLINK l _Toc .研讨背景与研讨意义 PAGEREF _Toc h HYPERLINK l _Toc

5、 . 任务内容 PAGEREF _Toc h HYPERLINK l _Toc . 论文组织构造 PAGEREF _Toc h HYPERLINK l _Toc 第章 JEE相关技术引见 PAGEREF _Toc h HYPERLINK l _Toc . JEE (Java Enterprise Edition) PAGEREF _Toc h HYPERLINK l _Toc . MVC 方式 PAGEREF _Toc h HYPERLINK l _Toc . Struts框架 PAGEREF _Toc h HYPERLINK l _Toc . 本章小结 PAGEREF _Toc h HYPE

6、RLINK l _Toc 第章 系统总体架构设计 PAGEREF _Toc h HYPERLINK l _Toc . 总体功能框架 PAGEREF _Toc h HYPERLINK l _Toc . 运用系统的数据流向 PAGEREF _Toc h HYPERLINK l _Toc . 部分组件的的设计 PAGEREF _Toc h HYPERLINK l _Toc .数据事件对象Event PAGEREF _Toc h HYPERLINK l _Toc .数据访问对象Data Access Object PAGEREF _Toc h HYPERLINK l _Toc . 本章小结 PAGER

7、EF _Toc h HYPERLINK l _Toc 第章 部分模块的设计与实现 PAGEREF _Toc h HYPERLINK l _Toc . 登陆界面 PAGEREF _Toc h HYPERLINK l _Toc . 凭证管理模块的设计与实现 PAGEREF _Toc h HYPERLINK l _Toc .凭证管理顺序图 PAGEREF _Toc h HYPERLINK l _Toc .界面实现 PAGEREF _Toc h HYPERLINK l _Toc . 报表分析模块的设计与实现 PAGEREF _Toc h HYPERLINK l _Toc . 相关名词的阐明 PAGER

8、EF _Toc h HYPERLINK l _Toc .操作流程图 PAGEREF _Toc h HYPERLINK l _Toc .界面实现 PAGEREF _Toc h HYPERLINK l _Toc . 本章小结 PAGEREF _Toc h HYPERLINK l _Toc 第章 部分技术难点的实现 PAGEREF _Toc h HYPERLINK l _Toc . Struts中分页显示的实现 PAGEREF _Toc h HYPERLINK l _Toc . searchResult.jsp PAGEREF _Toc h HYPERLINK l _Toc . Pagination

9、Bean.java PAGEREF _Toc h HYPERLINK l _Toc . 金额转换的实现 PAGEREF _Toc h HYPERLINK l _Toc . 本章小结 PAGEREF _Toc h HYPERLINK l _Toc 第六章 总结 PAGEREF _Toc h HYPERLINK l _Toc 致谢语 PAGEREF _Toc h HYPERLINK l _Toc 参考文献 PAGEREF _Toc h 厦门大学本科毕业论文 软件学院 陈肖如凭证管理及报表分析系统 PAGE 36 PAGE 35第章 绪 论. 引言当前,随着技术的日益提高,传统的软件开发两层构造正逐

10、渐转变为多层体系构造,但在带来宏大的灵敏性的同时,也添加了创建、测试、配置、管理和维护运用组件的复杂性;企业、公司纷纷需求参与到Internet中来,各种业务都进入了网络,这些企业级运用的快速增长促使其需求一个强健的、企业级的、以web为中心的运用构造来支撑。以JEE技术为代表的分布式对象技术和组件技术为处理上述的种种问题提供了一条很好的途径。JEE技术的运用,降低了开发多层效力的本钱和复杂性,使企业面对新的需求可以迅速部署和加强效力,极大地提高软件的消费率。本系统对JEE技术的采用,充分表达了其技术优点。.研讨背景与研讨意义在金融领域,虽然目前正在进展数据大集中,但是依然有许多的业务数据需求

11、手工以书面方式传送。这种反复任务,加大了业务处室的任务负担,在一定程度上也影响任务效率。同时,在我国参与WTO以后,我国金融业将面临国外的竞争,也给中国金融业带来了压力。如何利用更加科学和高效的手段对运营数据进展分析,是商业银行业务开展的需求。当前,现代商业银行根本上曾经建立起了完备的业务系统,积累了相对丰富的历史数据,可以利用这些珍贵的历史数据为银行效力,包括从历史数据中发现金融市场的开展规律、预测业务未来的变化趋势、洞悉业务运营的情况、预测和监控风险、辅助决策者发现新的利润增长点、优化银行的资金配置、协助 银行更加稳健地实现银行的管理和运营目的。. 任务内容凭证管理及报表分析系统是基于We

12、b的凭证及报表的生成打印系统。该系统可以协助银行管理人员管理特种转帐明细记录,并从中获取有价值的统计信息,从而到达管理分析和决策支持的目的。详细包括:买卖记录的查询、修正功能,凭证的预览打印功能,传统报表以及图形报表的定制、打印功能,和普通的系统管理功能。. 论文组织构造本文将依次引见以下内容:在第二章中,他们将主要引见JEE相关技术,包括JEE的根本概念,其常见方式MVC (Model-View-Controller)的体系构造,以及目前较为流行的基于JEE的运用程序开发框架Struts的根本组成。在第三章中,他们将提出凭证管理及报表分析系统的总体设计,包括系统的功能框架、数据在系统中的流向

13、和部分组件的设计。在第四章中,他们将给出本系统的详细实现。主要包括凭证管理模块的实现顺序、界面实现,和报表分析模块的操作流程、界面实现等。在第五章中,他们将以Struts中的分页显示,以及金额数值向中文大写金额的转换这两个技术难点的实现细节为例,引见本系统的一些技术特点。第章 JEE相关技术引见Java 平台企业版,也就是JEE,定义了开发多层企业运用程序的规范。它的诞生并不是偶尔的,它是在各种条件积累成熟之下的产物。. JEE (Java Enterprise Edition) JEE是一种利用Java 平台来简化企业处理方案的开发、部署和管理相关的复杂问题的体系构造。JEE技术的根底就是中

14、心Java平台或Java 平台的规范版,JEE不仅稳定了规范版中的许多优点,例如编写一次、随处运转的特性、方便存取数据库的JDBC API、CORBA技术以及可以在Internet运用中维护数据的平安方式等等,同时还提供了对 EJBEnterprise JavaBeans、Java Servlets API、JSPJava Server Pages以及XML技术的全面支持。其最终目的就是成为一个可以使企业开发者大幅缩短投放市场时间的体系构造。JEE运用多层的分布式运用模型,运用逻辑按功能划分为组件,各个运用组件根据他们所在的层分布在不同的机器上。现实上,sun设计JEE的初衷正是为理处理两层方

15、式(client/server)的弊端,在传统方式中,客户端担当了过多的角色而显得臃肿,难于晋级或改良,可伸展性也不理想,而且经常基于某种专有的协议通常是某种数据库协议。它使得重用业务逻辑和界面逻辑非常困难。如今JEE 的多层企业级运用模型将两层化模型中的不同层面切分成许多层。一个多层化运用可以为不同的每种效力提供一个独立的层,以下是 JEE 典型的多层构造:() Client tier客户层普通为阅读器或其他运用。客户层普遍地支持HTTP协议,也称客户代理。 ()WEB tier WEB运用层 在JEE中,这一层由WEB 容器运转,它包括JSP, SERVLET等WEB部件。 () EJB

16、tier 企业组件层 企业组件层由EJB容器运转,支持EJB, JMS, JTA 等效力和技术。() EIS tier 企业信息系统层企业信息系统包含企业内传统信息系统如财务,CRM等,特点是有数据库系统的支持。 图- JEE 体系架构. MVC 方式MVC (Model-View-Controller)方式是交互式运用程序广泛运用的一种体系构造。它有效地在存储和展现数据的对象中区分功能模块以降低它们之间的衔接度,这种体系构造将传统的输入、处置和输入模型转化为图形显示的用户交互模型,或者换一种说法,是多层次的Web商业运用;MVC体系构造具有三个层面:模型Model、视图(View)和控制(C

17、ontroller),每个层面有其各自的功能作用,MVC体系构造如下:图- MVC模型B/S方式模型层担任表达和访问商业数据,执行商业逻辑和操作。也就是说,这一层就是现实生活中功能的软件模拟;在模型层变化的时候,它将通知视图层并提供后者访问本身形状的才干,同时控制层也可以访问其功能函数以完成相关的义务。视图层担任显示模型层的内容。它从模型层获得数据并指定这些数据如何被显示出来。在模型层变化的时候,它将自动更新。另外视图层也会将用户的输入传送给控制器。控制层担任定义运用程序的行为。它可以分派用户的恳求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作;在一个图

18、形界面中,常见的用户输入包括点击按钮和菜单项选择择。在Web运用中,它包括对Web层的HTTP GET和POST的恳求;控制层可以基于用户的交互和模型层的操作结果来选择下一个可以显示的视图,一个运用程序通常会基于一组相关功能设定一个控制层的模块,甚至一些运用程序会根据不同的用户类型具有不同的控制层设定,这主要是由于不同用户的视图交互和选择也是不同的。在模型层、视图层和控制层之间划分责任可以减少代码的反复度,并使运用程序维护起来更简单。同时由于数据和商务逻辑的分开,在新的数据源参与和数据显示变化的时候,数据处置也会变得更简单。. Struts框架Struts是 Apache 软件基金会资助的一个

19、开放源代码框架,是一个免费的开源的WEB层的运用框架。Struts有一组相互协作的类组件、Serlvet以及jsp tag lib组成。基于struts构架的web运用程序根本上符合Model的设计规范,可以说是MVC设计方式的一种变化类型。Struts是一个web framwork,而不仅仅是一些标志库的组合。但 Struts 也包含了丰富的标志库和独立于该框架任务的适用程序类。Struts有其本人的控制器Controller,同时整合了其他的一些技术去实现模型层Model和视图层View。在模型层,Struts可以很容易的与数据访问技术相结合,包括EJB,JDBC和Object Relat

20、ion Bridge。在视图层,Struts可以与JSP, Velocity Templates,XSL等等这些表示层组件想结合。图- Struts架构. 本章小结本章主要引见了JEE的根本概念,其常见方式MVC (Model-View-Controller)的体系构造,以及目前较为流行的基于JEE的运用程序开发框架Struts的根本组成。下一章将提出凭证管理及报表分析系统的总体设计方案。第章 系统总体架构设计系统总体设计是指根据工程的需求,结合工程背景,提出系统的开发方案,并做出系统的总体开发构造的设计。. 总体功能框架如以下图所示:系统设置用户管理报表定制柱状图报表饼状图报表报表打印凭证管

21、理及报表分析系统凭证管理系统管理报表分析记录查询记录修正凭证打印凭证预览 图- 功能模块图 . 运用系统的数据流向数据的流向图如下:WebBrowserStrutsActionFormRequestEventActionDispatcherBusinessLogicDAODatabasestartResponseEvent 图- 数据流向图阅读器的恳求经过HTTP协议进入Struts的Web层架构,由ActionServlet来处置客户端的HTTP恳求。当ActionServlet接纳到客户恳求后,会根据配置文件中的映射关系,将客户恳求转交给适宜的处置器进展处置。处置器直接调用不同的业务逻辑处

22、置这些恳求;或分发这些恳求到其他的处置器进展二次处置甚至三次处置,构成处置链。业务逻辑处置层根据不同的恳求参数对象和数据做相应的处置,然后经过DAOData Access Object前往数据对象VO给业务层。数据对象经过ResponseEvent,传回给客户端。 . 部分组件的的设计.数据事件对象Event数据事件对象又包括恳求事件对象RequestEvent,前往事件对象ResponseEvent。经过事件来实现效力器与客户端之间数据的传送。实现方式:RequestEvent实现了java.IO.Serializable接口,用来封装向EJB中心层传送的音讯。RequestEvent是一个

23、笼统类,在运用的时候必需求实现此笼统类。他的实现类将一系列将要传送给EJB中心层的属性封装,并为这些属性设置getter和setter方法。这些属性封装的是Value Object对象类型。比如说,对于web客户端,他们将把在JSP页面生成的ActionForm(javabean)对象作为RequestEvent对象的一个属性,并为它生成getter和setter方法。RequestEvent对象会在客户端被生成,并作为参数传送给处置器,最终被对应的业务逻辑处置,并在处置之后被去除。ResponseEvent同样也实现了java.IO.Serializable接口,用来封装从EJB中心层传送到

24、各种不同的客户端的数据。类似于RequestEvent,ResponseEvent中要封装一些Value Object(javabean),这些Value Object是根据不同的业务流程所产生的。Value Object的封装方式要根据不同的业务流程去详细判别,这里不做详细的描画。此外,假设在ResponseEvent对象中要封装一样的Value Object类的多个对象时,要运用ArrayList对象来把这多个Value Object对象封装起来。ResponseEvent的生存周期与RequestEvent正好相反,也就是说,哪里生成的RequestEvent,那里就去除相应的Respo

25、nseEvent;哪里去除RequestEvent,那么就对应的生成ResponseEvent。.数据访问对象Data Access Object数据访问对象(DAO) 封装了对数据源的访问和操作,以保证业务逻辑对数据源的透明访问。业务逻辑都经过DAO来实现对数据库的访问所以业务逻辑只看到业务逻辑的操作方法,看不到后台的数据库的详细实现,这就实现了业务逻辑与数据逻辑的分别。实现方式:每个Business Object对应一个 (Table), 但是可以操作多个数据库表。每个数据库表对应一个DAO。简化业务逻辑与数据访问的层次,不设置单独的Business Object层,将Business O

26、bject和DAO合成一层。也就是说,对于对应多个数据库表的Business Object,直接在主要的DAO中包含将对其他辅表的DAO的访问, 这种Business Object和DAO在一个Class中实现的对象称为BPO。Business Object中只应该包含数据层的逻辑,不能包含业务流程层的逻辑。DAO类中不仅能处置对单个对象 (Row/Record) ,而且可以处置多个对象 (RowSet/RecordSet) ,这也是符合OO的概念的表达。. 本章小结本章描画了系统的总体设计,包括系统的功能框架、数据在系统中的流向和部分组件的设计。下一章将论述系统部分模块的详细设计。第章 部分

27、模块的设计与实现凭证管理和报表分析是本系统的中心模块,本章将对这两个模块的设计和实现进展详细引见。. 登陆界面基于银行内部管理的需求,凭证管理及报表分析系统不支持用户的注册,而是采用用户及其权限预分配的运用方法,因此在登陆界面上不出现注册功能。系统登陆界面如图-:图- 登陆界面. 凭证管理模块的设计与实现.凭证管理顺序图用户在进入凭证管理界面后可以进展以下操作:输入个或多个条件,进展明细记录的查询。假设查询结果不为空,选择一条记录进展修正。假设查询结果不为空,选择一条记录预览对应的电子凭证。重新进展查询。如图-:预览该记录电子凭证打印预览的凭证打印多个凭证execute(ActionMappi

28、ng,ActionForm,ServletResult,ServletResponse)对查询结果调用分页逻辑查询记录分页显示翻页修正记录修正胜利或取消execute(ActionMapping,ActionForm,ServletResult,ServletResponse)查询界面(jsp)预览打印分页逻辑查询结果(jsp)修正重新查询图- 凭证管理顺序图.界面实现. 记录查询页面用户根据提示,输入个或恣意多个查询条件,输入个条件视为无条件限制,并且支持商户名字段的中文模糊查询。如图-:图- 记录查询页面. 结果输出页面对查询所得结果进展分页显示。每条记录所显示的字段为:该记录在查询结果中

29、的编号、日期、付款人帐号、付款人称号、付款人开户行、收款人帐号、收款人称号、收款人开户行、金额和用途,其中金额字段由数据库表中的净金额字段与买卖金额字段相减得出。对需求打印电子凭证的记录,可利用复选框,进展一次性打印。如图-:图- 结果输出页面. 记录修正页面对查询所得的某条记录,点击其后面的“修正按钮,进入记录修正页面。由于记录内容的特殊性,只需规定的字段可以作出修正。为了防止对信息的非法修正,修正页面做出了相应的设置,使修正仅限于允许的范围。假设修正胜利,前往修正前的查询结果输出页面,并更新被修正的记录。如图-:图- 记录修正页面. 凭证预览页面对查询所得的某条记录,点击其后面的“预览按钮

30、,弹出该条记录对应的电子凭证的预览页面。凭证的详细称号为“特种转帐贷方凭证,其规格遵照。该电子凭证可直接打印。如图-:图- 凭证预览页面. 报表分析模块的设计与实现. 相关名词的阐明. 利润由于需求的特殊性,本系统的操作对象为银行特种转帐明细记录,每笔转帐所得利润即该笔转帐收取的手续费,手续费按以下方式收取:计算应付金额应付金额净金额买卖金额 -应付金额为正时不收取手续费应付金额为负时收取手续费,详细数额按以下公式计算:a. 付款人开户行为异地他行XXX行:手续费元封顶根本费元/笔至少收元应付金额 -b. 付款人开户行为异地我行XX建行:手续费元封顶根本费元/笔至少付元应付金额. -c. 付款

31、人开户行为本地我行厦门建行:手续费根本费元/笔只收元 -d. 付款人开户行为本地他行厦门X行:手续费元封顶根本费元/笔至少收元应付金额.-. 利润奉献度利润奉献度是一个短期的、某一时点上的和基于历史分析的概念。对本系统而言,利润奉献度就是某客户或客户组群或某一时间段,在某一期间为企业带来的利润。利润奉献度分析的主要目的是协助 银行了解其利润奉献度构成因子的分布情况,使行指点可以从不同角度进展绩效评价,制定相应的运营战略,进一步完善分行及业务部门的本身分析和流程规划。. 维度在数据仓库的概念中,维度(Dimension)是用来反映业务的一类属性,这类属性的集合构成一个维度,如时间、地理位置或产品

32、。而在数据发掘与OLAP的概念中,其目的是满足决策支持或者满足在多维环境下特定的查询和报表需求,它的技术中心就是维这个概念。“维普通包含着层次关系,经过把一个实体的多项重要的属性定义为多个维,运用户能对不同维上的数据进展比较。在本系统中,统计分析在客户和时间这两个维度上进展,客户维度有(一切客户) - (单个客户)这两个层次;时间维度有(年度) - (季度) - (月份)这三个层次。.操作流程图No选择维度选择度量和参照基准生成报表能否要生成图形报表Yes显示图形报表能否要重新定制YesNo图- 报表定制流程图.界面实现. 维度选择进展报表定制的第一步,是选择统计的维度。本系统有客户和时间这两

33、个维度供选择,可选择时间维度,或客户维度,或同时选择时间和客户维度。如图-:图- 维度选择. 度量选择进展报表定制的第二步,是选择统计的度量。根据第一步所选的维度,可选择不同的度量。包括对维度层次的选择,和对利润奉献度计算的参照基准的选择。参照基准即利润奉献度的时间跨度。维度选择客户时,度量选择界面如图-。维度选择时间和客户时,度量选择界面如图-。图- 度量选择图- 度量选择. 报表展现根据前面用户输入的定制条件,统计利润额及利润奉献度,生成报表。用户可根据需求,查看对应的柱状图报表或饼状图报表,或对报表进展打印。以统计维度为时间为例,生成报表如图-:以统计维度为客户为例,生成报表如图-:图-

34、 报表图- 报表.柱状图报表图形报表是对传统报表的一个现代化的表现方式,为客户提供了更为直观的统计信息。对生成的报表,可查看其对应的柱状图报表。以统计维度为时间为例,生成报表如图-:以统计维度为客户为例,生成报表如图-:图- 柱状图图- 柱状图.饼状图报表同样,对生成的传统方式报表,可查看其对应的饼状图报表。以统计维度为时间为例,生成报表如图-:图- 饼状图. 本章小结本章以凭证管理模块和报表分析模块为例,引见了本系统的详细实现。主要内容包括凭证管理模块的实现顺序、界面实现,和报表分析模块的操作流程、界面实现等。下一章将分析开发过程中部分技术难点的实现。第章 部分技术难点的实现在前面的章节中,

35、系统的设计任务曾经得到详细的阐明,本章将对表达本系统技术特点的部分技术难点进展分析。. Struts中分页显示的实现目前比较广泛运用的分页方式是将查询结果缓存在HttpSession或有形状bean中,翻页的时候从缓存中取出一页数据显示。这种方法有两个主要的缺陷:一是用户能够看到的是过期数据;二是假设数据量非常大时第一次查询遍历结果集会耗费很长时间,并且缓存的数据也会占用大量内存,效率明显下降。比较好的分页做法应该是每次翻页的时候只从数据库里检索页面大小的块区的数据。这样虽然每次翻页都需求查询数据库,但查询出的记录数很少,网络传输数据量不大,比在运用效力器层做缓存更为有效。本系统采用后者实现分

36、页。. searchResult.jsp/跳到第一页 第一页 /翻到上一页 上一页 /翻到下一页 下一页 /跳到最后一页 最后一页 . PaginationBean.javaint page_count = ; /总页数int curren_page = ; /当前页码int previous = ; /上一页页码int next = ; /下一页页码tryHttpSession session = request.getSession();RecordDao dao = (RecordDao)session.getAttribute(RecordDao);page_count = (Inte

37、ger)session.getAttribute(page_count).intValue();curren_page = Integer.parseInt(request.getParameter(curren_page); dao.setPagination_SQL(curren_page); RecordVo recordVoArray = dao.searchRecord();session.setAttribute(RecordVo, recordVoArray); previous = curren_ ; if ( previous = ) /假设有上一页 request.setA

38、ttribute(previous, new Integer(previous); next = curren_page + ; if ( next page_count) /假设有下一页 request.setAttribute(next, new Integer(next); . 金额转换的实现预览电子凭证时,金额一栏需求自动填写符合规范的中文大写金额,其转换由转换器AmountConvertor实现。/* AmountConvertor.java * 用于把数值型金额转换成字符串型的中文大写金额*/import java.text.*;import java.math.*;public

39、class AmountConvertorString ChineseAmount;public AmountConvertor()/* 格式化函数 */public String toFormatedString(double amount) /把数值转为.格式的字符串if (amount= & decimalPosition= & decimalPosition=) /整数分为部分fragment = formatedString.substring(,decimalPosition);fragment = that.fragmentConvert(fragment);fragment =

40、 formatedString.substring(decimalPosition+);ChineseAmount += fragment;if (!fragment.equals()|!fragment.equals() /整数部分不为ChineseAmount += 元;else if (fragment.equals() /整数部分为且小数部分也为ChineseAmount = 零元;return ChineseAmount;/* .处置小数部分 */if (fragment.equals() /整数部分不为但小数部分为ChineseAmount += 整;else /小数部分不为 /第

41、一位小数为if (fragment.charAt() = & !ChineseAmount.equals() ChineseAmount += 零;else if (fragment.charAt() != ) /第一位小数不为ChineseAmount += that.numberConvert(fragment.charAt() + 角;if (fragment.charAt() != ) /第二位小数不为ChineseAmount += that.numberConvert(fragment.charAt() + 分;return ChineseAmount;/* 位转换函数 */pub

42、lic String fragmentConvert(String fragment) /以位数为单位进展转换int i=;String convertedFragment = ;int length = fragment.length();/千位转换if (length = ) if (fragment.charAt() = ) /千位为for(i=;ilength;i+)if(fragment.charAt(i) != )break;if (i=length) /位都为return convertedFragment;convertedFragment+= 零;fragment = new

43、 String(fragment.substring(i);length = fragment.length();else /千位不为convertedFragment+=that.numberConvert(fragment.charAt()+仟;fragment = new String(fragment.substring();length-;/百位转换if (length = ) if (fragment.charAt() = ) /百位为for(i=;ilength;i+)if(fragment.charAt(i) != )break;if (i=length) /位都为return

44、 convertedFragment;convertedFragment+= 零;fragment = new String(fragment.substring(i);length = fragment.length();else /百位不为convertedFragment+=that.numberConvert(fragment.charAt()+佰;fragment = new String(fragment.substring();length-;/十位转换if (length = ) if (fragment.charAt() = ) /十位为if (fragment.charAt() = ) /位都为return convertedFragment;convertedFragment+= 零;else /十位不为convertedFragment+=that.numberConvert(fragment.charAt()+拾;fragment = new String(fragment.substring();length-;/个位转换if (length = ) if (fragment.charAt() != ) /个位不为convertedFragment+=that.numberConvert(fragment.charA

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论