基金交易平台毕业设计论文.doc

上传人:laozhun 文档编号:4168480 上传时间:2023-04-08 格式:DOC 页数:28 大小:384KB
返回 下载 相关 举报
基金交易平台毕业设计论文.doc_第1页
第1页 / 共28页
基金交易平台毕业设计论文.doc_第2页
第2页 / 共28页
基金交易平台毕业设计论文.doc_第3页
第3页 / 共28页
基金交易平台毕业设计论文.doc_第4页
第4页 / 共28页
基金交易平台毕业设计论文.doc_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《基金交易平台毕业设计论文.doc》由会员分享,可在线阅读,更多相关《基金交易平台毕业设计论文.doc(28页珍藏版)》请在三一办公上搜索。

1、目 录 摘 要2关键词3第一章 概述41.1概述41.1.1文档说明41.1.2系统需求概述4第二章 系统总体结构5第三章 系统设计63.1登陆类图63.1.1注册用例实现63.1.2登录用例实现73.1.3退出用例实现83.2基金操作类图93.2.1添加基金产品用例实现93.2.2查询基金产品信息用例实现103.2.3修改基金产品信息用例实现113.3客户操作类图123.3.1添加新客户用例实现123.3.2查询客户基本信息用例实现133.3.3修改客户基本信息用例实现143.3.4查询客户详细信息用例实现153.4资金账户操作类图163.4.1开立资金账户用例实现163.4.2查询资金账户

2、用例实现173.4.3追加账户资金用例实现183.4.4取出账户资金用例实现183.4.5冻结资金账户用例实现193.5基金账户操作类图203.5.1购买基金用例实现203.5.2查询基金账户用例实现213.5.3赎回基金用例实现21第四章 数据库设计234.1逻辑设计234.2表设计234.2.1 表SALES234.2.2 表FUND 基金244.2.3 表CLIENT 客户表244.2.4 表FINANCIAL_ACCOUNT 资金账户表244.2.5 表FUND_ACCOUNT基金账户25参考文献27致谢28摘 要:本课题全称为基于J2EE的开放式基金交易平台。根据开发要求,建设银行某

3、分行需要一个基金交易平台,以便银行窗口人员(本系统的操作人员)在此平台上为广大用户提供基金交易的便捷服务。本系统内容广泛,包括基金交易的各项服务,功能包括开立资金账户、查询资金账户信息、基金产品信息发布和查询、基金产品信息的修改、客户信息数据库维护、购买基金产品、赎回基金产品等等。满足了当前中国开放式基金市场的交易需求,给广大基金公司和投资公司带来便利,提高了工作效率。在开发工具的选择上,采用B/S结构,J2EE平台下的MVC三层架构,表示层和控制层采用Struts框架,业务逻辑层采用EJB3,数据库采用SQL 2000。1关键词:开放式基金交易,基金交易平台, J2EE,EJB,SQL200

4、0 第一章 概述1.1概述开放式基金是指基金发起人在设立基金时,基金单位或者股份总规模不固定,可视投资者的需求,随时向投资者基金单位或者股份,并可以应投资者的要求赎回发行在外的基金单位或者股份的一种基金运作方式。目前,开放式基金已成为国际基金市场的主流品种,开放式基金进入中国市场的时间很短,近两年才发展起来,并且市场前景非常广阔,而国内为基金交易提供支持的软件系统却不多。因此,开发一套适合大众需求的、高效、稳定的基金交易平台系统是很有必要的。21.1.1文档说明本文档适用于本项目开发人员阅读,开发人员可据此进行开发。本设计文档主要采用了OOAD的方法,从类图和时序图的角度对系统进行了分析设计。

5、1.1.2系统需求概述本系统是一个关于开发式基金进行交易的平台,它主要包括一下功能 : 基金销售人员登陆管理 基金产品管理 客户资料管理 客户资金账户管理 基金交易管理 3第二章 系统总体结构该系统将采用J2EE技术架构实现,WEB层采用Struts架构,页面采用了EJB层使用了Session Bean 和Entity Bean,采用了Session Faade的设计模式,其技术架构如下图所示。WEB Layer(Struts)Web EJB LayerDBActionFormJSPSession BeanEntity BeanDelegateServiceLocator第三章 系统设计3.1

6、登陆类图实体类图,如下所示。_ClientDto_- serialVersionUID : long = 1L_- clientNo : Integer_- clientName : String_- idCardNo : String_- sex : String_- phone : String_- address : String_._+ getClientNo ( )_+ setClientNo ( )_+ getClientName ( )_+ setClientName ( )_+ getIdCardNo ( )_+ setIdCardNo ( )_+ getSex ( )_+ s

7、etSex ( )_+ getPhone ( )_+ setPhone ( )_+ getAddress ( )_+ setAddress ( )_+ getEmail ( )_+ setEmail ( )_+ getHobby ( )_+ setHobby ( )_+ getCreatedDate ( )_+ setCreatedDate ( )_._FundDto_- serialVersionUID : long = 1L_- fundNo : Integer_- fundName : String_- price : Double_._+ getFundNo ( )_+ setFund

8、No ( )_+ getFundName ( )_+ setFundName ( )_+ getPrice ( )_+ getCurrentPrice ( )_- pickNumberInRange ( )_+ setPrice ( )_+ getDescription ( )_+ setDescription ( )_+ getStatus ( )_+ setStatus ( )_+ getCreatedDate ( )_+ setCreatedDate ( )_._SalesDto_- serialVersionUID : long = 1L_- salesNo : Integer_- u

9、sername : String_- password : String_._+ getSalesNo ( )_+ setSalesNo ( )_+ getUsername ( )_+ setUsername ( )_+ getPassword ( )_+ setPassword ( )_+ getRealname ( )_+ setRealname ( )_+ getSex ( )_+ setSex ( )_._FinancialAccountDto_- serialVersionUID : long = 1L_- accountNo : Integer_- clientNo : Integ

10、er_- financingAmount : Double_- status : String_._+ getAccountNo ( )_+ setAccountNo ( )_+ getClientNo ( )_+ setClientNo ( )_+ getFinancingAmount ( )_+ setFinancingAmount ( )_+ getCreatedDate ( )_+ setCreatedDate ( )_+ getStatus ( )_+ setStatus ( )_+ getPassword ( )_+ setPassword ( )_+ equals ( )_+ h

11、ashCode ( )_._FundAccountDto_- serialVersionUID : long = 1L_- fundAccNo : Integer_- financialAccNo : Integer_- fundNo : Integer_- fundName : String_._+ getFundDto ( )_+ setFundDto ( )_+ getFundAccNo ( )_+ setFundAccNo ( )_+ getFinancialAccNo ( )_+ setFinancialAccNo ( )_+ getFundNo ( )_+ setFundNo (

12、)_+ setFundName ( )_+ getFundName ( )_+ getTotalPrice ( )_+ getQuantity ( )_+ setQuantity ( )_+ getPrice ( )_+ setPrice ( )_._*_1_1_*_1_1_*_1_*_1_*_1_*_13.1.1注册用例实现A、时序图_ : Sales_ : ServiceLocator_ : registration.jsp_ : SalesAction.java_ : SalesDelegate.java_ : SalesSessionFacade_ : 基金柜台操作人员_ : logi

13、n.jsp_1 : 输入注册资料 _2 : 校验密码,检验用户名是否存在 _3 : 委托 _4 : ?获取SalesSessionFacade接口? _5 : 注册 _6 : 保存注册信息到数据库 _7 : 返回login。Jsp B、描述1)输入注册资料输入用户、密码、确认密码和性别。资料必须输入,不能为空。2)获取注册资料在Action里通过Form表单获取用户输入的注册资料。校验两次密码是否一致,并检验用户名是否存在。3)委托注册委托代理类SalesDelegate进行注册。4)获取SessionBean接口SalesDelegate类获取SalesSessionFacade接口,以便调

14、用SalesSessionFacade关于注册的方法。5)注册调用会话Bean SalesSessionFacade的业务逻辑方法进行注册。6)保存注册信息通过实体Bean Sales把注册数据保存到数据库中。7)返回结果注册成功后,通过findForward方法返回到系统登录页面login.jsp。43.1.2登录用例实现A、时序图_ : 客户_ : ServiceLocator_ : welcome.jsp_ : login.jsp_ : Sales_ : SalesAction.java_ : SalesSessionFacade_ : SalesDelegate_1 : 输入用户名和密

15、码 _2 : 表单获取登陆的用户名和密码 _3 : 查找系统是否存在此用户 _4 : ?获取SalesSessionFacade接口? _5 : 通过SalesSessionFacade接口查找此用户 _6 : 通过Sales接口查找此用户 _7 : 通过findForward输出结果 B、描述1)输入用户名和密码 在系统首页,输入用户名和密码,都不能为空,提交前作检验。2)获取登录数据 提交后,SalesAction通过Form表单获取登录的用户名和密码。3)委托查找此用户SalesAction委托SalesDelegate查找系统是否存在此用户名和密码的用户。4)获取SessionBean

16、接口SalesDelegate获取一个SalesSessionFacade接口。5)查找此用户SalesDelegate通过SalesSessionFacade接口去查找此用户。6)查找此用户SalesSessionFacade通过Sales接口去查找此用户。7)返回结果 SalesAction通过findForward方法输出结果页面。3.1.3退出用例实现A、时序图客户_welcome.jsp_login.jsp_SalesAction.java_1 : 点击退出 _2 :提交退出请求到salesAction _3 :清除Session_4 :输出结果 B、描述1)点击退出链接点击功能主页

17、上的退出链接。2)提交退出请求 提交退出请求到SalesAction。3)清除SessionSalesAction清除Session。4)退出到注册登录页SalesAction通过findForward方法输出结果页面。53.2基金操作类图3.2.1添加基金产品用例实现A、时序图B、描述1)输入添加的基金产品信息 输入添加的基金产品信息产品名称、产品价格和产品描述,并在提交前校验它们是否为空,为空的话,给出提示信息,不准提交。2)获取输入的信息 提交后,FundAction通过Form表单获取输入的数据。3)委托添加产品 委托FundDelegate添加产品。4)获取FundSessionFa

18、cde接口FundDelegate获取FundSessionFacde接口,以便调用Session Bean。5)添加基金产品通过FundSessionFacde的方法添加基金产品。6)基金产品信息入库 通过调用实体Bean Fund接口的create方法添加产品信息。7)返回结果FundAction通过findForward方法输出结果页面。3.2.2查询基金产品信息用例实现A、时序图B、描述1)输入查询条件 输入查询条件,产品编号或产品名称,提交前检查是否输入了其中的一项数据。2)获取查询条件数据 提交后,FundAction通过Form表单获取输入的数据。3)委托查询委托FundDele

19、gate查询产品基本信息。4)获取FundSessionFacde接口FundDelegate获取FundSessionFacde接口,以便调用Session Bean。5)查询通过FundSessionFacde的方法查询基金产品。6)查询通过调用实体Bean Fund接口的findByPrimaryKey或findByName方法查询产品基本信息。7)返回结果FundAction通过findForward方法输出结果页面,显示产品基本信息。3.2.3修改基金产品信息用例实现A、时序图B、描述1)输入基金产品修改数据先通过查询查询出基金产品信息,然后点击修改按钮,进行修改产品信息输入页面,输

20、入修改的数据。2)获取修改数据提交后,FundAction通过Form表单获取输入的数据。3)委托修改基金产品委托FundDelegate修改产品基本信息。4)获取FundSessionFacde接口FundDelegate获取FundSessionFacde接口,以便调用Session Bean。5)修改基金产品信息通过FundSessionFacde的方法updateFund修改基金产品。6)修改基金产品信息通过调用实体Bean Fund接口的findByPrimaryKey方法查询并修改产品基本信息。7)返回结果FundAction通过findForward方法输出结果页面,显示修改结果

21、。3.3客户操作类图3.3.1添加新客户用例实现A、时序图B、描述1)输入客户信息 输入客户基本信息,并校验必输项。2)获取输入的数据 提交后,ClientAction通过Form表单获取输入的数据。3)委托添加客户信息 委托ClientDelegate添加客户基本信息。4)获取ClientSessionFacde接口 ClientDelegate获取ClientSessionFacde接口,以便调用其业务方法。5)添加客户信息 通过调用ClientSessionFacde接口的createClient方法添加客户信息。6)添加客户信息ClientSessionFacde调用实体Bean Cl

22、ient的create方法添加客户信息到数据库。7)返回结果ClientAction通过findForward方法输出结果页面,显示添加结果。3.3.2查询客户基本信息用例实现A、时序图B、描述1)输入查询条件 输入查询条件,客户编号或身份证,两者必输其一。 2)获取查询条件 提交后,ClientAction通过Form表单获取输入的数据。3)委托查询委托ClientDelegate查询客户基本信息。4)获取ClientSessionFacde接口ClientDelegate获取ClientSessionFacde接口,以便调用其业务方法。5)查询客户基本信息通过调用ClientSession

23、Facde接口的clientFindByPrimaryKey或clientFindByIdCardNo方法查询客户信息。6)查询客户基本信息ClientSessionFacde调用实体Bean Client的findByPrimaryKey方法或findByIdCardNo方法查询客户信息。7)返回结果ClientAction通过findForward方法输出结果页面,显示查询结果。3.3.3修改客户基本信息用例实现A、时序图_ : Client_ : ServiceLocator_ : clientUpdate.jsp_ : ClientSessionFacade_ : ClientDele

24、gate_ : StrutsAction ClientAction_ : 修改_1 : 点击修改,输入修改数据 _2 : 通过Form表单获取输入的数据 _3 : 委托ClientDelegate修改客户信息 _4 : ?获取ClientSessionFacde接口? _5 : 调用updateClient方法修改客户信息 _6 : 调用实体Bean Client修改客户信息 _7 : 通过FindForward方法输出结果 B、描述1)输入修改的客户信息 先查询出客户基本信息,然后点击一个修改按钮后,出现修改页面,输入修改的数据。2)获取修改的客户信息提交后,ClientAction通过Fo

25、rm表单获取输入的数据。3)委托修改委托ClientDelegate修改客户基本信息。4)获取ClientSessionFacde接口ClientDelegate获取ClientSessionFacde接口,以便调用其业务方法。5)修改客户信息通过调用ClientSessionFacde接口的updateClient方法修改客户信息。6)修改客户信息ClientSessionFacde调用实体Bean Client的方法修改客户信息。7)返回结果ClientAction通过findForward方法输出结果页面,显示修改结果。3.3.4查询客户详细信息用例实现A、时序图B、描述1)点击详细信息

26、链接 在客户基本信息页面上,点击详细信息链接。2)获取指令和客户编号ClientAction获取指令和客户编号。3)委托查询客户基本信息 委托ClientDelegate查询客户基本信息。4)获取ClientSessionFacde接口 获取ClientSessionFacde接口,以便调用其业务逻辑方法。5)查询客户基本信息 通过ClientSessionFacde的方法查询客户基本信息。6)查询客户基本信息ClientSessionFacde调用实体Bean Client的方法获取客户基本信息。7)委托查询客户资金账户信息 委托ClientDelegate查询客户资金帐户信息。8)委托查询

27、客户基金账户信息委托ClientDelegate查询客户基金帐户信息。9)返回结果ClientAction通过findForward方法输出结果页面,显示客户详细信息。3.4资金账户操作类图3.4.1开立资金账户用例实现A、时序图B、描述1)输入开户信息 输入开户信心:客户编号、金额、资金账户密码、确认密码。2)提交开户信息 提交开户信息到FinancialAction,并获取其输入数据。3)委托开户 委托FinancialDelegate开立资金帐户。4)获取FinancialAccountSessionFacde接口 获取FinancialAccountSessionFacde接口,以便调

28、用其业务逻辑方法。5)开立资金帐户 调用FinancialAccountSessionFacde的方法,开资金账户。6)建立资金账户 调用实体Bean Financial的方法,创建资金账户。7)返回结果 FinancialAction通过findForward方法显示开立资金帐户结果页面。3.4.2查询资金账户用例实现A、时序图B、描述1)输入查询条件输入资金账号或客户编号,两者必输其一。2)提交查询条件数据提交查询条件到FinancialAction,并获取其输入数据。3)委托查询委托FinancialDelegate查询资金帐户。4)获取FinancialAccountSessionFa

29、cde接口获取FinancialAccountSessionFacde接口,以便调用其业务逻辑方法。5)查询资金账户 调用FinancialAccountSessionFacde的方法,查询金账户。6)查询资金账户调用实体Bean Financial的方法,查询资金账户。7)输出查询结果FinancialAction通过findForward方法显示资金帐户信息的结果页面。3.4.3追加账户资金用例实现A、时序图B、描述1)输入账户号码及追加金额2)提交追加数据 提交输入信息到FinancialAction,并获取其输入数据。3)委托追加 委托FinancialDelegate追加资金。4)获

30、取FinancialAccountSessionFacde接口获取FinancialAccountSessionFacde接口,以便调用其业务逻辑方法。5)追加金额及校验 调用FinancialAccountSessionFacde的方法,追加资金。6)记录追加金额调用实体Bean Financial的方法,追加资金。7)显示追加结果FinancialAction通过findForward方法显示追加资金的结果页面。3.4.4取出账户资金用例实现A、时序图B、描述1)输入账户和取出金额及密码2)提交输入数据 提交输入信息到FinancialAction,并获取其输入数据。3)委托取钱委托Fin

31、ancialDelegate取钱。4)获取FinancialAccountSessionFacde接口获取FinancialAccountSessionFacde接口,以便调用其业务逻辑方法。5)取钱调用FinancialAccountSessionFacde的方法,取钱。6)更新账户余额调用实体Bean Financial的方法,更新账户余额。7)显示取钱结果FinancialAction通过findForward方法显示取钱的结果页面。3.4.5冻结资金账户用例实现A、时序图B、描述1)点击冻结账户按钮先查询出资金账户的基本信息,在此页面上设置一个冻结账户的按钮,点击它可进行账户冻结。2)

32、提交冻结指令及账户提交冻结指令及账户到FinancialAction,并获取相关数据。3)委托冻结委托FinancialDelegate冻结资金账户。4)获取FinancialAccountSessionFacde接口获取FinancialAccountSessionFacde接口,以便调用其业务逻辑方法。5)冻结账户调用FinancialAccountSessionFacde相关方法,冻结资金账户。6)冻结账户调用实体Bean Financial相关方法,冻结资金账户。7)显示冻结结果FinancialAction通过findForward方法显示冻结资金账户的结果页面。3.5基金账户操作类

33、图3.5.1购买基金用例实现A、时序图B、描述1)输入购买信息选择已经上市的基金、观察当前价格,输入购买数量、资金账户及其密码。2)提交输入的购买信息 提交到FundAccountAction ,并获取取输入数据。3)委托购买 委托FundDelegate进行购买。4)获取FundAccountSessionFacde接口 FundDelegate获取FundAccountSessionFacde接口,以便调用相关方法。5)购买基金 调用FundAccountSessionFacde接口的业务方法,购买基金,并从资金账户中扣除所发生的所有金额。6)生成基金账户调用实体Bean FundAcco

34、unt的相关方法,生成基金账户。7)显示购买结果FundAccountAction通过findForward方法输出结果页面,显示购买结果。3.5.2查询基金账户用例实现A、时序图B、描述1)输入查询条件输入基金账户号码,要求必须输入。2)提交输入的数据 提交到FundAccountAction ,并获取取输入数据。3)委托查询委托FundDelegate进行查询。4)获取FundAccountSessionFacde接口FundDelegate获取FundAccountSessionFacde接口,以便调用相关方法。5)查询基金账户调用FundAccountSessionFacde接口的业务

35、方法,查询基金账户。6)查询基金账户数据调用实体Bean FundAccount的相关方法,查询基金账户。7)显示查询结果FundAccountAction通过findForward方法输出结果页面,显示查询结果。3.5.3赎回基金用例实现A、时序图B、描述1)输入赎回数据 输入基金账户、赎回数量和资金账户密码,都必须输入。2)提交输入数据提交到FundAccountAction ,并获取取输入数据。3)委托赎回委托FundDelegate进行赎回(更新基金账户和资金账户)。4)获取FundAccountSessionFacde接口FundDelegate获取FundAccountSessio

36、nFacde接口,以便调用相关方法。5)赎回基金调用FundAccountSessionFacde接口的业务方法,赎回基金。6)更新基金账户调用实体Bean FundAccount的相关方法,更新基金账户。7)显示赎回基金结果FundAccountAction通过findForward方法输出结果页面,显示赎回结果。第四章 数据库设计4.1逻辑设计该系统的数据库设计实体关系图(E-R图)参考如下4.2表设计表名功能说明SALES基金柜台操作人员FUND基金CLIENT客户FINANCIAL_ACCOUNT资金账户FUND_ACCOUNT基金账户4.2.1 表SALES表名SALES列名数据类型

37、(精度范围)空/非空约束条件其它说明SALES_NO NUMBER (20)非空 主键操作人员编号USERNAME VARCHAR2 (40) 非空UNIQUE操作人员名称PASSWORD VARCHAR2 (40) 非空密码REALNAME VARCHAR2 (40) 非空真实姓名SEX VARCHAR2 (10) 非空性别CREATED_DATE DATE 非空创建日期补充说明CREATE SEQUENCE SALESSEQ START WITH 1 INCREMENT BY 1 MINVALUE 1 NOCACHE NOCYCLE NOORDER ;4.2.2 表FUND 基金表名FUN

38、D列名数据类型(精度范围)空/非空约束条件其它说明FUND_NO NUMBER (20)非空 主键基金号码FUND_NAME VARCHAR2 (40)非空UNIQUE基金名称PRICE FLOAT非空基金价格 DESCRIPTION VARCHAR2非空描述STATUS VARCHAR2非空状态CREATED_DATE DATE非空创建日期补充说明CREATE SEQUENCE FUNDSEQ START WITH 1 INCREMENT BY 1 MINVALUE 1 NOCACHE NOCYCLE NOORDER ;4.2.3 表CLIENT 客户表表名CLIENT列名数据类型(精度范围

39、)空/非空约束条件其它说明CLIENT_NO NUMBER (20)非空 主键客户账号CLIENT_NAME VARCHAR2 (50)非空UNIQUE客户名称ID_CARD_NO VARCHAR2 (20)非空身份证SEX VARCHAR2 (10)非空性别PHONE VARCHAR2 (20)非空电话ADDRESS VARCHAR2 (100)非空地址EMAIL VARCHAR2 (50)非空EmailHOBBY VARCHAR2 (100) 空爱好CREATED_DATE DATE非空创建日期补充说明CREATE SEQUENCE CLIENTSEQ START WITH 1 INCRE

40、MENT BY 1 MINVALUE 1 NOCACHE NOCYCLE NOORDER ;4.2.4 表FINANCIAL_ACCOUNT 资金账户表表名FINANCIAL_ACCOUNT列名数据类型(精度范围)空/非空约束条件其它说明ACCOUNT_NO NUMBER (20)非空 主键资金账户CLIENT_NO NUMBER (20)非空UNIQUE客户号码 外键对应客户表的此字段。FINANCING_AMOUNT FLOAT非空总资金CREATED_DATE DATE非空创建日期STATUS VARCHAR2 (20)非空状态PASSWORD VARCHAR2 (40)非空口令/密码补充说明CREATE SEQUENCE FINANCIALACCOUNTSEQ START WITH 1 INCREMENT BY 1 MINVALUE 1 NOCACHE NOCYCLE NOORDER ;4.2.5 表FUND_ACCOUNT基金账户表名FUND_ACCOUNT列名数据类型(精度范围)空/非空约束条件其它说明FUND_ACC_NO NUMBER (20)非空 主键基金账号FINANCIAL_ACC_NO NUMBER (20)非空资金账号,对应资金表账号FUND_NO

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号