基于SSM框架的小额贷款系统设计与实现
孙祥+于莲芝
摘要:
传统小额贷款业务手续繁琐,审核复杂,从而导致放款、还款周期长,人工成本高等一系列问题。鉴于此,通过计算机技术,提出基于SSM框架的小额贷款管理系统。系统开发利用idea intellij 2017 开发平台、MySQL数据库软件,采用MVC模式,SSM框架。系统经过测试验证,运行稳定,使用效果良好,提高了用户申请贷款的审核与放款速度,减少了企业的业务成本,提高了工作效率。
关键词:
数据库;MVC模式;小额贷款;SSM框架;JAVA
DOIDOI:10.11907/rjdk.172233
中图分类号:TP319
文献标识码:A文章编号文章编号:1672-7800(2018)001-0129-03
Abstract:The procedure of traditional small-loan business is cumbersome and complicated, which leads to a series of problems of loan, repayment period and labor cost.Given this, the smal loan system based on the SSM framework is proposed through computer technology. System development use the idea intellij 2017 development platform, MySQL database software, adopts the MVC mode, the SSM framework.The system has been tested and verified, the operation is stable, the use effect is good, the review and loan speed of the users application loan are improved, the business cost of the enterprise is reduced, and the work efficiency is improved.
Key Words:database; MVC mode; SSM; small loan; JAVA
0引言
近年来,随着互联网和移动通信技术的普及,我国的互联网金融发展迅猛,互联网金融借助电子商务平台和信息优势快速替代传统金融领域。在互聯网普及的大潮下,像国有银行这样的传统金融体系也在快速更迭技术以求跟上时代的步伐,贷款公司则利用船小好调头的便利迅速抢占市场[1]。一个稳定,能够适应高数据量的金融系统,更易于扩展和需求变更简便的金融贷款系统。鉴于此,本文提出以Spring,SpringMVC和MyBatis(以下简称SSM[2])为架构的小额贷款系统。在这个框架下,使用者可以根据自身的需要进行敏捷开发,快速实现并调整业务,具有较高的灵活性和较低的构建成本。该系统功能全面详尽,为金融贷款业务提供了很好的业务支撑,从而大幅提高生产力。
1小额贷款系统模型需求分析
1.1研究背景
随着互联网的快速发展和金融工具的不断丰富,传统的柜台式贷款无论从额度还是流程上都无法满足如今人们的需求,快速和便捷成为了当今社会服务的主流标签。以最方便快捷的方式申请一笔小额贷款成为了一个不可忽视的社会需求[3]。为了实现科学化、现代化的管理,提升小额贷款业务管理的效率与质量,迫切需要开发一个完整的小额贷款管理系统,以减轻工作人员的劳动强度,提高工作效率。
1.2技术分析
JAVA语言和Linux[4]系统的组合作为服务器上最广泛最稳定的开发语言和平台,有着得天独厚的优势。一个完整的贷款系统包括用户管理、客户服务、审核服务、财务管理、催收业务、统计报表等一系列子系统,并且会时常面临高并发、高并行等严苛的性能及安全要求,JAVA EE[5]便成为企业级系统架构的优先选择。SSM框架在易用程度上相比时下流行的Spring-Struts-Hibernate框架毫不逊色,而且SpringMVC天生与Spring的契合度和MyBatis的SQL语句可控,使SSM具有更高的开发效率和灵活的业务编写。
2小额贷款系统总体设计
2.1系统流程设计
服务器的主要功能是通过以手机号为用户标识的注册信息进行识别和存储。通过发送验证码的方式激活注册信息再进行用户登录。用户填写个人资料。当资料审核成功进入申请贷款阶段。服务器审核通过后则根据用户填写的银行卡进行放款,如拒绝则服务终止。基于以上需求,本文小额贷款系统的基本流程如图1所示。
2.2系统功能模块设计
小额贷款系统功能模块结构包括用户模块、信用审核模块、财务模块、客服投诉以及运营管理模块等,以此为核心提供多个接口供前端调用,系统模块如图2所示。编写集成部署脚本用在Linux系统的Tomcat服务器上进行编译和部署,同时需要一个消息队列进行业务的异步处理,从而减少响应时间和解耦。为了减少多并发所造成的服务器压力,系统采用ActiveMQ[6]作为子模块之间的通信和消息队列;MAVEN[7]用来处理项目的构建管理与相关jar包下载;git仓库则用来明确自己的代码版本,使搭建和修改的过程更加清晰。下面简要阐述各模块的功能。
(1)用户模块。用户先通过手机号注册并激活账号后自动登录,根据前端页面所给的输入框填写包括姓名、身份证号在内的用户必填信息。
(2)信审模块。根据用户所提供的个人资料以及银行卡信息进行审核,判定用户是否具有放款资格。
(3)财务模块。审核通过的借款合同将会进入放款流程,通过第三方接口调用给需要放款的银行卡进行放款,并且在后续的还款操作中负责记录和销账。
(4)客服模块。通过用户模块和财务模块所提供的个人信息和借款单号为客户提供服务,并将需要其他系统处理的单号通过工单系统转交出客服模块。
(5)催收模块。逾期的借款单号将会进入催收系统并进行电话催款。
(6)运营模块。统计整个系统的各项运营参数。将每日放款金额,利息金额,还款金额,逾期金额等参数以视图的方式展示。
2.3数据库设计
本系统基本实体类基于主要业务的系统需求,用户系统及信审系统以用户类为基础;财务系统与催收系统基于用户所生成的订单类为核心;运营系统与客服系统则是对整体的用户类以及订单类进行整体的处理。除此之外,根据业务需要还有相关的员工类,放款类等各系统的扩展类。从轻便易用的角度出发,本系统采用的是体积最小相关配置最少的MySQL[8]数据库。鉴于篇幅有限,以下只给出用户类和借款类的核心字段。
3系统实现
3.1用户模块实现
用户模块主要实现用户的注册登录以及信息的录入。程序需要为每个前端请求创建一个有时间限制的session,服务器首先检查请求里是否包含了一个session标识(即session_id),如果已经包含一个session_id则说明以前已经为此客户创建过session,服务器就按照session_id把这个session检索出来使用,并更新该session的最后操作时间。如果session_id过期,则删除该session_id并返回会话已过期的结果。在用户注册页面,用户需要填写用户名、密码、姓名、电话号码、银行卡等必要信息,进行注册。在登陆后可以选择要申请的金额大小和日期。电话号码和银行卡需要调用第三方接口进行实名认证,从而保证了用户信息的真实性,降低了贷款风险。
3.2信审模块实现
用户在申请界面提交申请,由前端录入借款金额、日期,会话ID调用信审接口,信审模块通过MySQL数据库根据session_id查询用户的所有个人信息和借款记录,如果该用户有未还借款则拒绝申请,否则生成一笔借款单号与合同编号,并将整合好的结果集显示给信审员进行审核。审核员审核允许放款后则该借款单号将交由财务模块进行放款操作,若拒绝放款则提示用户被拒。
3.3财务模块实现
用户所有成功申请的借款订单通过广播的形式从信审子模块传递给财务子模块进行放款,财务模块生成相应的放款实体存储在数据库中,获取用户绑定在用户模块中的银行卡信息,然后用系統模拟账户对目标银行账号进行转账操作,打款完毕的订单通过呼叫中心模块给用户发送短信告知贷款已到账。财务模块提供查看放款实体接口给财务人员观测放款状况,同时编写定时任务用以更新每一笔订单的逾期天数,以备催收模块使用。
3.4催收模块实现
催收子模块通过ActiveMQ订阅财务子模块发布的逾期放款单号信息,根据逾期天数进行逾期等级判定[9],逾期等级如表3所示。
当合同进入逾期之后,根据逾期的不同类型分配相应的催收员进行催收,催收子模块将提供给催收员所有相应借款订单的个人信息和贷款记录从而方便催收,当逾期天数达到90天以上则判定为坏账,停止催收。
4测试结果
系统开发完成后部署在ubantu操作系统的Tomcat7.0[10]服务器上。在50位用户的注册信息看到还款的操作流程里,所有主要模块稳定运行,各项功能正常使用,信审员账号获取所有的申请订单通过接口正常处理,逾期订单根据逾期类型的不同分配给三位催收员账号。
5结语
本文采用了敏捷高效的Spring-SpingMVC-Mybatis框架,通过简洁明了的配置进行快速开发实现了小额贷款管理系统,该系统是传统贷款业务与互联网技术的有机结合,给金融贷款业务带来了新的业务模式并提高了生产力。在系统设计方面,对数据库设计和系统流程设计进行了讨论。本系统经过测试,能够稳定运行,功能基本达到预期设计要求,不但满足了小额贷款管理的需要,而且在稳定性和扩展性上都具有很大的操作性。
参考文献:
[1]宫晓林.互联网金融模式及对传统银行业的影响[J].南方金融,2013(5):86-88.
[2]王艳清,陈红.基于SSM框架的智能web系统研发设计[J].计算机工程与设计,2012,33(12):4751-4757.
[3]孙鹤,朱启臻.国外小额贷款发展的成功经验及对中国的启示[J].世界农业,2007(2):12-15.
[4]杜华.Linux编程技术详解[M].北京:人民邮电出版社,2007.
[5]CAYS HORSTMANN, GARYCORNELL,康奈尔,等.Java核心技术[M].北京:人民邮电出版社,2015.
[6]戴俊,朱晓民.基于ActiveMQ的异步消息总线的设计与实现[J].计算机系统应用,2010,19(8):254-257.
[7]李俊杰.Maven在企业Java软件产品中的应用[J].电脑知识与技术,2011,7(7):1562-1565.
[8]施瓦茨,扎伊采夫,特卡琴科.高性能MySQL(原书第3版)[M].北京:电子工业出版社,2013.
[9]郭玉清.逾期债务、风险状况与中国财政安全——兼论中国财政风险预警与控制理论框架的构建[J].经济研究,2011(8):38-50.
[10]雷军.Tomcat+mysql搭建简单毕业证书查询系统[J].科技视界,2012(25):185-185.
(责任编辑:刘亭亭)
摘要:
传统小额贷款业务手续繁琐,审核复杂,从而导致放款、还款周期长,人工成本高等一系列问题。鉴于此,通过计算机技术,提出基于SSM框架的小额贷款管理系统。系统开发利用idea intellij 2017 开发平台、MySQL数据库软件,采用MVC模式,SSM框架。系统经过测试验证,运行稳定,使用效果良好,提高了用户申请贷款的审核与放款速度,减少了企业的业务成本,提高了工作效率。
关键词:
数据库;MVC模式;小额贷款;SSM框架;JAVA
DOIDOI:10.11907/rjdk.172233
中图分类号:TP319
文献标识码:A文章编号文章编号:1672-7800(2018)001-0129-03
Abstract:The procedure of traditional small-loan business is cumbersome and complicated, which leads to a series of problems of loan, repayment period and labor cost.Given this, the smal loan system based on the SSM framework is proposed through computer technology. System development use the idea intellij 2017 development platform, MySQL database software, adopts the MVC mode, the SSM framework.The system has been tested and verified, the operation is stable, the use effect is good, the review and loan speed of the users application loan are improved, the business cost of the enterprise is reduced, and the work efficiency is improved.
Key Words:database; MVC mode; SSM; small loan; JAVA
0引言
近年来,随着互联网和移动通信技术的普及,我国的互联网金融发展迅猛,互联网金融借助电子商务平台和信息优势快速替代传统金融领域。在互聯网普及的大潮下,像国有银行这样的传统金融体系也在快速更迭技术以求跟上时代的步伐,贷款公司则利用船小好调头的便利迅速抢占市场[1]。一个稳定,能够适应高数据量的金融系统,更易于扩展和需求变更简便的金融贷款系统。鉴于此,本文提出以Spring,SpringMVC和MyBatis(以下简称SSM[2])为架构的小额贷款系统。在这个框架下,使用者可以根据自身的需要进行敏捷开发,快速实现并调整业务,具有较高的灵活性和较低的构建成本。该系统功能全面详尽,为金融贷款业务提供了很好的业务支撑,从而大幅提高生产力。
1小额贷款系统模型需求分析
1.1研究背景
随着互联网的快速发展和金融工具的不断丰富,传统的柜台式贷款无论从额度还是流程上都无法满足如今人们的需求,快速和便捷成为了当今社会服务的主流标签。以最方便快捷的方式申请一笔小额贷款成为了一个不可忽视的社会需求[3]。为了实现科学化、现代化的管理,提升小额贷款业务管理的效率与质量,迫切需要开发一个完整的小额贷款管理系统,以减轻工作人员的劳动强度,提高工作效率。
1.2技术分析
JAVA语言和Linux[4]系统的组合作为服务器上最广泛最稳定的开发语言和平台,有着得天独厚的优势。一个完整的贷款系统包括用户管理、客户服务、审核服务、财务管理、催收业务、统计报表等一系列子系统,并且会时常面临高并发、高并行等严苛的性能及安全要求,JAVA EE[5]便成为企业级系统架构的优先选择。SSM框架在易用程度上相比时下流行的Spring-Struts-Hibernate框架毫不逊色,而且SpringMVC天生与Spring的契合度和MyBatis的SQL语句可控,使SSM具有更高的开发效率和灵活的业务编写。
2小额贷款系统总体设计
2.1系统流程设计
服务器的主要功能是通过以手机号为用户标识的注册信息进行识别和存储。通过发送验证码的方式激活注册信息再进行用户登录。用户填写个人资料。当资料审核成功进入申请贷款阶段。服务器审核通过后则根据用户填写的银行卡进行放款,如拒绝则服务终止。基于以上需求,本文小额贷款系统的基本流程如图1所示。
2.2系统功能模块设计
小额贷款系统功能模块结构包括用户模块、信用审核模块、财务模块、客服投诉以及运营管理模块等,以此为核心提供多个接口供前端调用,系统模块如图2所示。编写集成部署脚本用在Linux系统的Tomcat服务器上进行编译和部署,同时需要一个消息队列进行业务的异步处理,从而减少响应时间和解耦。为了减少多并发所造成的服务器压力,系统采用ActiveMQ[6]作为子模块之间的通信和消息队列;MAVEN[7]用来处理项目的构建管理与相关jar包下载;git仓库则用来明确自己的代码版本,使搭建和修改的过程更加清晰。下面简要阐述各模块的功能。
(1)用户模块。用户先通过手机号注册并激活账号后自动登录,根据前端页面所给的输入框填写包括姓名、身份证号在内的用户必填信息。
(2)信审模块。根据用户所提供的个人资料以及银行卡信息进行审核,判定用户是否具有放款资格。
(3)财务模块。审核通过的借款合同将会进入放款流程,通过第三方接口调用给需要放款的银行卡进行放款,并且在后续的还款操作中负责记录和销账。
(4)客服模块。通过用户模块和财务模块所提供的个人信息和借款单号为客户提供服务,并将需要其他系统处理的单号通过工单系统转交出客服模块。
(5)催收模块。逾期的借款单号将会进入催收系统并进行电话催款。
(6)运营模块。统计整个系统的各项运营参数。将每日放款金额,利息金额,还款金额,逾期金额等参数以视图的方式展示。
2.3数据库设计
本系统基本实体类基于主要业务的系统需求,用户系统及信审系统以用户类为基础;财务系统与催收系统基于用户所生成的订单类为核心;运营系统与客服系统则是对整体的用户类以及订单类进行整体的处理。除此之外,根据业务需要还有相关的员工类,放款类等各系统的扩展类。从轻便易用的角度出发,本系统采用的是体积最小相关配置最少的MySQL[8]数据库。鉴于篇幅有限,以下只给出用户类和借款类的核心字段。
3系统实现
3.1用户模块实现
用户模块主要实现用户的注册登录以及信息的录入。程序需要为每个前端请求创建一个有时间限制的session,服务器首先检查请求里是否包含了一个session标识(即session_id),如果已经包含一个session_id则说明以前已经为此客户创建过session,服务器就按照session_id把这个session检索出来使用,并更新该session的最后操作时间。如果session_id过期,则删除该session_id并返回会话已过期的结果。在用户注册页面,用户需要填写用户名、密码、姓名、电话号码、银行卡等必要信息,进行注册。在登陆后可以选择要申请的金额大小和日期。电话号码和银行卡需要调用第三方接口进行实名认证,从而保证了用户信息的真实性,降低了贷款风险。
3.2信审模块实现
用户在申请界面提交申请,由前端录入借款金额、日期,会话ID调用信审接口,信审模块通过MySQL数据库根据session_id查询用户的所有个人信息和借款记录,如果该用户有未还借款则拒绝申请,否则生成一笔借款单号与合同编号,并将整合好的结果集显示给信审员进行审核。审核员审核允许放款后则该借款单号将交由财务模块进行放款操作,若拒绝放款则提示用户被拒。
3.3财务模块实现
用户所有成功申请的借款订单通过广播的形式从信审子模块传递给财务子模块进行放款,财务模块生成相应的放款实体存储在数据库中,获取用户绑定在用户模块中的银行卡信息,然后用系統模拟账户对目标银行账号进行转账操作,打款完毕的订单通过呼叫中心模块给用户发送短信告知贷款已到账。财务模块提供查看放款实体接口给财务人员观测放款状况,同时编写定时任务用以更新每一笔订单的逾期天数,以备催收模块使用。
3.4催收模块实现
催收子模块通过ActiveMQ订阅财务子模块发布的逾期放款单号信息,根据逾期天数进行逾期等级判定[9],逾期等级如表3所示。
当合同进入逾期之后,根据逾期的不同类型分配相应的催收员进行催收,催收子模块将提供给催收员所有相应借款订单的个人信息和贷款记录从而方便催收,当逾期天数达到90天以上则判定为坏账,停止催收。
4测试结果
系统开发完成后部署在ubantu操作系统的Tomcat7.0[10]服务器上。在50位用户的注册信息看到还款的操作流程里,所有主要模块稳定运行,各项功能正常使用,信审员账号获取所有的申请订单通过接口正常处理,逾期订单根据逾期类型的不同分配给三位催收员账号。
5结语
本文采用了敏捷高效的Spring-SpingMVC-Mybatis框架,通过简洁明了的配置进行快速开发实现了小额贷款管理系统,该系统是传统贷款业务与互联网技术的有机结合,给金融贷款业务带来了新的业务模式并提高了生产力。在系统设计方面,对数据库设计和系统流程设计进行了讨论。本系统经过测试,能够稳定运行,功能基本达到预期设计要求,不但满足了小额贷款管理的需要,而且在稳定性和扩展性上都具有很大的操作性。
参考文献:
[1]宫晓林.互联网金融模式及对传统银行业的影响[J].南方金融,2013(5):86-88.
[2]王艳清,陈红.基于SSM框架的智能web系统研发设计[J].计算机工程与设计,2012,33(12):4751-4757.
[3]孙鹤,朱启臻.国外小额贷款发展的成功经验及对中国的启示[J].世界农业,2007(2):12-15.
[4]杜华.Linux编程技术详解[M].北京:人民邮电出版社,2007.
[5]CAYS HORSTMANN, GARYCORNELL,康奈尔,等.Java核心技术[M].北京:人民邮电出版社,2015.
[6]戴俊,朱晓民.基于ActiveMQ的异步消息总线的设计与实现[J].计算机系统应用,2010,19(8):254-257.
[7]李俊杰.Maven在企业Java软件产品中的应用[J].电脑知识与技术,2011,7(7):1562-1565.
[8]施瓦茨,扎伊采夫,特卡琴科.高性能MySQL(原书第3版)[M].北京:电子工业出版社,2013.
[9]郭玉清.逾期债务、风险状况与中国财政安全——兼论中国财政风险预警与控制理论框架的构建[J].经济研究,2011(8):38-50.
[10]雷军.Tomcat+mysql搭建简单毕业证书查询系统[J].科技视界,2012(25):185-185.
(责任编辑:刘亭亭)