网贷系统基于JAVA实现的p2p理财系统.docx
《网贷系统基于JAVA实现的p2p理财系统.docx》由会员分享,可在线阅读,更多相关《网贷系统基于JAVA实现的p2p理财系统.docx(45页珍藏版)》请在冰点文库上搜索。
![网贷系统基于JAVA实现的p2p理财系统.docx](https://file1.bingdoc.com/fileroot1/2023-4/29/85ea39c0-8da3-49b5-b644-0769a35efb82/85ea39c0-8da3-49b5-b644-0769a35efb821.gif)
网贷系统基于JAVA实现的p2p理财系统
网贷系统:
基于JAVA实现的p2p理财系统(论文)
摘要
理财系统是一个企业不可缺少的部分,企业很早就实施了理财的集中管理,而家庭或大学生使用的小型理财系统却只是凤毛麟角。
然而,理财系统不仅仅对企业,而且对学生个人都有十分重要的意义。
论文系统地分析了软件开发的背景及过程,首先介绍了软件的开发环境,其次介绍了本软件的详细设计过程:
数据库的设计以及具体界面的设计和功能,最后对在本软件开发过程中的问题进行了总结。
利用面向对象的编程方法(OOP)和ADO数据库访问技术,其开发主要包括后台数据库的建立、维护以及前端应用程序开发,通过JAVA和数据库相结合,实现了大学生理财的自动化和信息化。
系统主要包括以下几个模块:
用户密码登陆,原始数据的汇入、修改、删除等,从而实现对大学生个人的收入与支出进行有效、系统的管理,并使之更全面和灵活。
通过论文,可以了解到“有‘理’真好——大学生理财软件”的规划、设计过程,掌握系统的功能。
关键词:
网贷系统;理财;数据库;面向对象的编程方法,p2p理财系统
Abstract
Thesystemoffinancingisveryimportanttobusinessenterprise,anditisanindispensabilitypart.Thebusinessenterpriseispreviouslyandalreadyfocalizationintheexecutionfinancialmanagement.However,thefinancingsystemisnotonlytobusinessenterprise,andtostudentsorfamiliesallcontainveryimportantmeaning.
Thisthesissystematicallyanalyzesthebackgroundandprocessofsoftware’sexploitation.Firstlyittellsustheexploitativeenvironmentofsoftware.Secondlyitshowstheprocessofdesigningthesoftwareindetail,suchasthedesignofdatabaseandtheachievement,aswellasthedesignandfunctionsoftheconcreteinterface.Finallyitconcludestheproblemsthatoccurintheexploitativeprocessofthissoftware.Adoptingthewayofobjectorientedprogram(OOP)andADOdatabaseinterviewtechnique,whoseexploitationmainlyincludestheestablishmentandmaintenanceofbackgrounddatabaseandtheprocessofforepartapplication,usingthewayJAVAthatachieveautomatizationandinformationtechnologyofthesystemoffinancinginstudents.
Thesystemmainlyconsistsofthefollowingmodules:
Customerpassworddebarkation,Investigatingdatabaseandtheconfluenceofinitialdataandsoon,whichmaketheavailabilityofthecashinstudentsintoearningandpayout,Investigationandmanagementofthesystemmoreperfectandflexible.
Accordingtoreadthethesis,youcanrealizetheprogram“TheStudents’FinancingSystem“theapproachofdesignandcontrolthefunctionofsystem.
KeyWords:
UniversityStudents;Financing;DATABASE;ObjectOrientedProgram
引言
美国著名经济学家詹姆斯菲尔德对于美国大学生理财规划,提出了专门的“1+1+1”模式:
学会贷款——用明天的钱圆今天的梦,学会兼职——让“增值”为以后的超前消费埋下伏笔,学会投资——为今后的个人理财“投石问路”。
现在很多大学生对自己的消费不以为然,有钱的时候就大手大脚,等到没有钱的时候就和家里伸手,所以使得很多大学生养成了不好的习惯,就此我们小组对于这一项目展开调查和研究了这个软件,有助于我们在平时的消费中养成良好的消费习惯。
在我们的调查中发现很多大学生的花销主要集中在通讯,娱乐等方面。
另外参考了李永华等对武汉高校大学生消费情况的调查表明,大学生在经济消费水平上存在着巨大差距,其中年消费最高的达到18500元,而年消费最低的只有2100元。
武汉市大学生每年消费均值略高于8300元,其中包括学费均值3000元左右,住宿非均值500元左右。
大学生的月食品支出在230元左右,它与生活费月支出(480元)比率是47.9%,这可视为大学生的“恩格尔系数”,与1999年武汉市人均消费支出和食物支出相比,呈现出整体上消费水平比较高的趋势。
据XX网站查询的资料表明,暂时没有一个成熟、具指导性、针对大学生的理财软件。
大学生是拥有一定的消费能力,除了家庭资金供给外,一部分大学生还有兼职收入、奖学金收入和投资收入,而且重要的一点是大学生将是未来4-5年后社会的主体消费及创造社会财富的群体,本软件是根据大学生消费理念设计的,据我们调查所做的调查,有将近70%的大学生会考虑使用理财软件,因此,在理财软件方面是具有一定的潜力市场。
我们小组采用java来实现软件的开发,主要利用面向对象的编程(OOP)的方法来完成程序的开发。
1绪论
近年来,计算机技术飞速发展几乎超出了人们的想象,硬件的更新换代速度更是以级数进行。
计算机在处理对象、处理方法上都发生了很大的变化。
作为计算机科学的重要分支——数据库技术,也被越来越多的应用领域采用来存储和处理他们的信息资源。
计算机已经不再仅仅是科学研究的工具,它越来越多地影响到了我们生活的诸多方面,更多的应用软件出现在了我们的身边,给人们生活的方方面面都带来了极大的便利。
近年来随着国内外社会经济和科学技术的不断改革和发展,2004中国大学生消费与生活形态研究报告[4]指出:
“当代大学生不仅消费能力在提高,而且在消费结构方面呈现多元化的趋势。
”各种各样的开销与收入也越来越多,很多大学生对于日常账目的管理感到越来越力不从心,收支管理已刻不容缓。
大学生们需要一款适合他们使用的理财软件。
1.1前期调研
为了解大学生对于理财管理系统是否有需求,我们针对大学生理财方面提出了17条问题。
我们采用的是通过QQ和E-mail进行随机电子问卷调查方式,发出问卷50份,收回的有效问卷是36份。
调研范围为:
全国各大高校在校大学生,地区主要集中在沈阳、大连,也包括广州、佛山、上海、郑州、长沙、济南、香港等城市。
调查表明,有83.33%的大学生每月没有盈余,甚至是超支。
对于问卷第16题“若有一款大学生理财软件,你是否会考虑使用呢?
”,回答“会”的人共有25人。
说明有69.44%的人会使用适合他们使用的理财软件。
通过前期调研,不难发现大学生们急需一个成熟、具指导性、针对大学生的理财软件进行合理的理财分析。
1.2计算机技术综述
在计算机硬件和软件技术不断创新和进步的背景下,计算机技术在20世纪有许多重大突破,它涉及到人们生活的方方面面,主要可以归结为以下四个方面:
第一,处理对象的变化。
在计算机应用初期,计算机的处理主要是数值和简单的符号。
随着计算机速度和存储容量的增大,今天的计算机已经能够处理声、图、文和语言等多种信息,除二维、静止图像外,还可以处理三维运动的图像等等。
也就是说,人类使用的任何信息形式现在计算机都可以处理了。
这不仅使计算机的用途大大地扩展,而且使今天的用户能够从计算机的屏幕上看到图文并茂,有声有色的画面。
从而使计算机从专业人员圈子中走出来,走向普通用户,走向平民百姓。
第二,处理方法或建模方法的进步。
传统计算机的应用只限制在数学模型为基础的数值计算上。
不管是科学计算,数据处理还是计算机自动化,这些都离不开数值计算,因此让计算机做任何事情之前,首先需要建立数学模型:
算数的、代数的、微积分的、等等,没有数学模型计算机无从进行计算,这些使所有传统算法的基础,到了20世纪中叶,由于人工智能的出现以及它所取得的成就,计算机应用开始突破这一限制——计算机能够进行符号计算,记忆逻辑和知识为基础的符号推理。
这些突破极大地扩展了计算机的应用范围,使那些无法用数学表达的问题,只要人们有足够的经验知识,计算机就可能根据这些知识进行模拟,达到问题求解的目的,实现所谓人工智能,人们希望那些目前大家了解还不深,或者还不清楚的问题,计算机也能帮助解决,软计算就是这个背景下提出的。
二十世纪的七八十年代,提出的模糊计算,神经网络计算以及进化计算等,都是希望计算机能够进一步处理模糊概念、模糊推理等类问题,是计算机在先前经验只是较弱的情况下,也能帮助人们处理疑难问题、软计算或计算智能给人们带来希望,因此成为近来研究的热点。
第三,处理方式的变化。
在处理方式上人们也经历了三个阶段。
在早期的主机时代,人们采用的是集中交互处理的模式。
这两种方式都是以各人单独工作为中心的,现在我们进入了计算机网络时代,人们的工作方式发生了很大转变,走向分布协同工作的时代。
总之,以上这些变化会影响到21世纪计算机应用技术的发展和变化。
第四,硬件技术的提高。
伴随着时代的发展,由最初的电子管计算机发展到即将到来的量子计算机,计算速度也发展到了最初计算机的数万倍以上。
在外型上,从桌上型、笔记型(Notebook)到掌上型计算机(Palm),不管是功能上的提升或可携带性的特色,都显示出未来计算机将以轻薄短小,容易携带为主。
随着计算机进一步的小型化,人工智能将越来越强地集成到我们的环境中。
便携设备将像装饰品一样穿在衣服里。
个人计算机也不断向着普及的方向发展,各种计算机外设的品质不断提高、丰富,极大地方便了人们的工作和生活。
数据库技术的发展已经经历了很长的一段时间,从层次型数据库,网状数据库直到今天的关系型数据库以及面向对象的数据库。
目前流行的数据库管理系统(DBMS)有多种,其中大型数据库管理系统有Oracle,SQLServer等,小型数据库管理系统有FoxPro,Access等,它们已能满足人们对数据库应用的基本要求。
今天,网络技术的发展对数据库技术提出了新的要求。
人们希望能访问存储在不同网格,不同节点上的数据而不需要了解数据存储的细节,并且能够在系统局部故障的情况下保证数据无损。
这就形成了人们对分布式数据库管理系统的部分要求——数据的位置透明性和安全性。
本理财系统采用的开发平台是Microsoft®WindowsXP。
与其它操作系统相比,WindowsXP更稳定,有较好的网络功能。
数据库设计与维护采用的是Mysql,软件的数据库访问及软件开发工具采用的是Eclipse,它面向对象的编程方式(OOP)使程序设计过程大大简化,对数据库的访问更灵活。
相对于其他开发环境,Eclipse使开发人员的工作更快、成本更低、周期更短、质量更高、功能更强。
Eclipse为应用开发环境提供了全面综合性的支持:
事件驱动的应用程序;功能强大的编程语言和函数;面向对象的编程;开放的数据库连接系统。
1.3开发背景与主要内容
结合大学生理财现状,大学生缺乏理财观念开发这个应用系统的目标是为了代替人工进行许多繁杂的劳动,节省许多资源,提高大学生理财的工作效率。
它主要实现的功能如下:
功能一:
验证用户和密码的正确性再登入,以及修改密码和退出系统;
功能二:
保存每次输入的收支记录,并提供查询;
功能三:
对大学生收入/支出进行管理,实现费用的增加,修改,删除;
功能四:
整个收支记录按需求进行分类查询。
2系统技术开发
2.1可行性分析
可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否能够解决。
2.1.1经济可行性
计算机的价格已经十分低廉,性能也有了长足的进步。
而本系统的开发,为大学生理财的工作效率带来了一个质的飞跃,为此主要表现有以下几个方面:
第一,本系统的运行可以代替人工进行许多繁杂的劳动;
第二,本系统的运行可以节省许多资源;
第三,本系统的运行可以大大的提高大学生理财的工作效率;等等。
所以,本系统在经济上是可行的。
2.1.2技术可行性和运行可行性
本理财系统采用的开发平台是Microsoft®WindowsXP。
与其它操作系统相比,WindowsXP更稳定,有较好的网络功能。
使用Eclipse作为系统开发的开发环境,它面向对象的编程方式(OOP)使程序设计过程大大简化,对数据库的访问更灵活。
提供完善的指令控制语句、类与对象的支持及丰富的数据类型,全面综合性的支持:
事件驱动的应用程序;功能强大的编程语言和函数;面向对象的编程;开放的数据库连接系统。
给开发高性能系统提供了保障,为开发满足客户要求的系统保证了代码的模块化要求,而代码模块化的提高,非常有利于以后对新系统的扩展与修改。
相对于其他开发环境,Java使开发人员的工作更快、成本更低、周期更短、质量更高、功能更强。
综上所述,本系统的设计与开发在技术上和硬件设备上的条件都是满足的,因此,它在技术上是可行的。
本系统为一个小型的理财系统,所耗费的资源非常的小,学校的电脑无论是硬件还是软件都能够满足条件,因此,本系统在运行上是可行的。
2.2面对对象的程序设计介绍
传统的结构化程序设计(StructuredProgramming)是一种强调功能抽象化和模块化的编程方法,它把解决问题的过程看作是一个处理单位。
这就是说结构化程序设计中,模块是对功能的抽象,而每一个模块都是一个处理单位,并有输入和输出。
而面向对象的程序设计(ObjectOrientedProgramming,OOP)是一种以对象为基础,以事件来驱动对象执行的程序设计技术。
OOP把计算过程看作为对象的分类过程加上其状态变化的过程,也就是将一个应用程序逐步划分成相互关联的多个对象,并且建立起与这些对象相互关联的事件过程,通过对象对所发生的事件产生响应,并执行相应的事件过程以引发对象状态的改变,从而最终达到完成计算的目的。
与结构化程序设计不同,面向对象的程序设计综合了功能的抽象和数据的抽象,它把解决问题的过程看作是一个对象分类演绎的过程。
在OOP中,对象(Object)是一个包括数据和方法(操作)的并被封装起来的整体,它是对数据和功能的抽象和统一,而对象就包含了模块的概念。
面向对象设计是一种全新的程序设计方法,它从根本上改变了传统的程序设计模式。
其基本思想是:
通过建立与具体实际应用相对应的对象,并通过这些对象的组合来创建具体的应用程序。
这种设计方法给程序设计带来了许多良好特性,一般说来有以下几点:
(1)模块性:
对象是一个功能和数据独立的单元,它们之间只能通过对象认可的方式来进行通信,并可以较为自由地为其他对象所调用。
(2)封装性:
这一特性为信息的隐藏提供了具体的实现手段,用户不必清楚对象内部的细节,只需了解其功能即可。
(3)继承性:
这一特性为代码的共享提供了一种非常有效的方法,从而可以避免重复的代码设计,实现对象的可重用性。
这一特性也是面向对象程序设计技术最本质的特征。
(4)可靠性:
对象实现了抽象和封装,从而使得其中出现的错误限制在对象的内部,因而不会向外部传播,同时也易于检查和维护。
(5)可扩充性:
面向对象系统可以通过继承机制不断扩充其对象的功能,而不会影响原系统的运行。
(6)连续性:
虽然面向对象的程序设计语言在编程模式上相差很大,但它并没有摒弃传统的做法,它不仅采用了传统程序设计语言的语言元素,而且利用它们来模拟建立对象,从而使得一个熟悉传统程序设计语言的编程者能够很快掌握面向对象设计的规律。
2.3SQL语言介绍
SQL(StructuredQueryLanguage,结构化查询语言)是由Boyce和Chamberlin在1974年提出的,由于它功能丰富,使用灵活、语言简洁易学等特点,在计算机工业界和计算机用户中倍受欢迎,快得到应用和推广。
许多关系数据库系统DB2、Oracle、SQLServer2000、Sybase等都实现了SQL语言。
1986年10月,美国国家标准局(ANSI)的数据库委员会批准了SQL作为关系数据库语言的美国标准。
1987年6月,国际标准化组织(ISO)将其采纳为国际标准,也称为“SQL86”。
因此,SQL不仅是结构化查询语言,而且成为了国际标准语言。
SQL数据库的体系结构基本上了三级模式结构。
如图2.1。
图2.1SQL数据库的体系结构
SQL数据库的体系结构具有如下特点:
(1)一个数据库(Database)是表和约束的集合;
(2)一个表(Table)由行(Row)构成,每行是列(Column)的集合;
(3)一张表既可以是基本表,也可以是一个视图;
(4)一个基本表可以跨一个或多个存储文件,一个存储文件也可存放一个或多个基本表,一个表可以带若干索引,索引文件也存放在存储文件中;
(5)SQL用户可以是应用程序,也可以是终端用户。
SQL语句可嵌入在各种宿主语言中,宿主语言有VB、VC、VC#、VB.Net、Delphi、PowerBuildings等高级语言;SQL语言也能作为独立用户接口,供交互环境下的终端用户使用。
2.4JDBC数据访问技术
JDBC(JavaDataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。
JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯JavaAPI编写数据库应用程序,同时,JDBC也是个商标名。
有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。
换言之,有了JDBCAPI,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBCAPI写一个程序就够了,它可向相应数据库发送SQL调用。
同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。
Java数据库连接体系结构是用于Java应用程序连接数据库的标准方法。
JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。
作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。
JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODBC之间的桥接。
JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。
Java具有坚固、安全、易于使用、易于理解和可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。
所需要的只是Java应用程序与各种不同数据库之间进行对话的方法。
而JDBC正是作为此种用途的机制。
JDBC扩展了Java的功能。
例如,用Java和JDBCAPI可以发布含有applet的网页,而该applet使用的信息可能来自远程数据库企业也可以用JDBC通过Intranet将所有职员连到一个或多个内部数据库中(即使这些职员所用的计算机有Windows、Macintosh和UNIX等各种不同的操作系统)。
随着越来越多的程序员开始使用Java编程语言,对从Java中便捷地访问数据库的要求也在日益增加。
MIS管理员们都喜欢Java和JDBC的结合,因为它使信息传播变得容易和经济。
企业可继续使用它们安装好的数据库,并能便捷地存取信息,即使这些信息是储存在不同数据库管理系统上。
新程序的开发期很短。
安装和版本控制将大为简化。
程序员可只编写一遍应用程序或只更新一次,然后将它放到服务器上,随后任何人就都可得到最新版本的应用程序。
对于商务上的销售信息服务,Java和JDBC可为外部客户提供获取信息更新的更好方法。
2.5数据库系统概述
(1)数据(Data)
数据是数据库中存储的对象。
数据在大多数人头脑中的第一反映就是数字。
其实数字只是最简单的一种数据,是数据的一种传统和狭义的理解。
广义的理解,数据的种类很多,文字,图形,图像,声音等都是数据,可以对数据做以下定义:
描述事物的符号记录称为数据。
(2)数据库(Database)
数据库,顾名思义,是存放数据的仓库。
只不过这个仓库是在计算机存储设备上,而且数据是按一定的格式存放的。
数据库是指长期存在计算机内的,有组织的,可共享的数据集合。
数据库中的数据按一定的数据模型组织,描述和存储,具有较高的数据独立性和易扩展性,并可以为各种用户共享。
(3)数据库管理系统(DatabaseManagementSystem,简称DBMS)
数据库管理系统是位于用户和操作系统之间的一层数据管理软件。
它主要有以下几个方面的功能:
①数据定义功能
DBMS提供数据定义语言,用户通过它可以方便的对数据库中的数据对象进行定义。
②数据操纵功能
DBMS还提供数据操纵语言,用户可以使用这语言操纵数据实现对数据库的基本操作。
如查询,插入,删除和修改等。
③数据库的运行管理
数据库在建立,运行和维护时由数据库管理系统统一管理,统一控制,以保证数据的安全性,完整性,多用户对数据的并发使用乃发生故障后的系统恢复。
④数据库的建立和维护功能
它包括数据库初始的输入,转换功能,数据库的转存,恢复功能,数据库的重组织功能和性能监视。
这些功能通常是由一些实用的程序完成的。
2.6系统开发理论介绍
2.6.1系统规划阶段
(网贷系统)系统规划阶段的任务是对各大学生理财的环境、目标及现行系统的状况进行初步调查,根据大学生理财目标和发展战略,确定信息系统的发展战略,对建设新系统的需求做出分析和预测,同时考虑建设新系统所受的各种约束,研究建设新系统的必要性和可能性。
根据需要与可能,给出拟建系统的备选方案。
对这些方案进行可行性分析,写出可行性分析报告。
可行性分析报告审议通过后,将新系统建设方案及实施计划编写成系统设计任务书。
2.6.2系统分析阶段
系统分析阶段的任务是根据系统设计任务书所确定的范围,对现行系统进行详细调查,描述现行系统的业务流程,指出现行系统的局限性和不足之处,确定