系统阐述的是银行信用卡用户的数仓系统的设计与实现,对于nodejs、MySql进行了较为深入的学习与应用。主要针对系统的设计,描述,实现和分析与测试方面来表明开发的过程。开发中使用了 express框架和MySql数据库技术搭建系统的整体架构。利用这些技术结合实际需求开发了具有个人中心、用户管理、信用卡数据管理、商品数据管理、商品信息管理、系统管理、订单管理等功能的系统,最后对系统进行相应的测试,测试系统有无存在问题以及测试用户权限来优化系统,最后系统达到预期目标。
前端技术:nodejs+vue+elementui,
Express 框架于Node运行环境的Web框架,
语言 node.js
框架:Express
前端:Vue.js
数据库:mysql
数据库工具:Navicat
开发软件:VScode
视图层其实质就是vue页面,通过编写vue页面从而展示在浏览器中,编写完成的vue页面要能够和控制器类进行交互,从而使得用户在点击网页进行操作时能够正常。
代码结构讲解
1、 node_modules文件夹(有npn install产生)
这文件夹就是在创建完项目后,cd到项目目录执行npm install后生成的文件夹,下载了项目需要的依赖项。
2、package.json文件
此文件是项目的配置文件(可定义应用程序名,版本,依赖项等等)。node_modules文件夹下的依赖项是从哪里知道的呢?原因就是项目根目录下的这个package.json文件,执行npm install时会去找此文件中的dependencies,并安装指定的依赖项。
3、public文件夹(包含images、javascripts、stylesheets)
这个文件夹做过Web开发的应该一看就知道,为了存放图片、脚本、样式等文件的。
4、routes文件夹
用于存放路由文件。
5、views文件夹
存放视图。
随着计算机技术发展,计算机系统的应用已延伸到社会的各个领域,大量基于大数据的广泛应用给生活带来了十分的便利。所以把银行信用卡用户的数仓管理与现在网络相结合,利用计算机搭建银行信用卡用户的数仓系统,实现银行信用卡用户的数仓信息化。则对于进一步提高银行信用卡用户的数仓管理发展,丰富银行信用卡用户的数仓管理经验能起到不少的促进作用。目 录1 概 述 5
1.1研究背景 5
1.2研究意义 5
1.3研究内容 5
2 关键技术介绍 7
2.1 nodejs语言简介 7
2.2大数据介绍 7
2.3 MySql数据库 8
2.4 express框架 8
3 系统分析 12
3.1可行性分析 12
3.1.1经济可行性 12
3.1.2技术可行性 12
3.1.3运行可行性 12
3.2系统用例分析 12
3.3流程设计 14
3.3.1程序流程图设计 14
3.3.2添加信息流程图设计 14
3.3.3删除信息流程图设计 15
4 系统的设计 16
4.1系统总功能模块设计 16
4.2系统数据库设计 16
4.2.1数据库系统概要设计 16
4.2.2 E-R模型结构设计 17
4.3数据表设计 19
5 系统的实现 30
5.1系统功能实现 30
5.2管理员模块实现 32
6系统测试 36
6.1系统测试的目的 36
6.2软件测试过程 36
6.3测试用例 37
结论 39
致谢 40
参考文献 41
1 概 述
1.1研究背景
中国在两千年左右就已经对计算机这一块发展到相当的规模了,现在老百姓们越来越离不开计算机网络、互联网所带来的好处了,现如今各种格式的网站系统遍地开花,现在不同于以往老旧的管理方式了,只有跟上时代的发展才能不会被淘汰掉,所以对于银行信用卡用户的数仓来说也是同样的,将传统的线下管理带到线上,能够大大提升管理效率,好处也有很多,首先整体的美化、提升了在新时代的背景之下新的样貌,更加朝气蓬勃。一个好的系统能够把传统的银行信用卡用户的数仓信息管理方式,带上一全新的方式,效率、可靠、安全稳定集合一身的系统,带来的体验是传统管理方式所没有办法实现的,信息的交流将达到顶峰,用户的沟通将会更加的便捷,有问题实时反馈提交,及时接收重要通知,将银行信用卡用户的数仓管理正规化、合理化、高效化。
1.2研究意义随着时代的发展,信息技术得到广泛的应用给人们和生活注入了充沛的活力。网络使人们生活和工作带来便利,可以更高效的处理人们获取信息中精细化、全面化的问题,从而提高了工作效率。从独特且和资源相对优势的管理带来了更好的发展机会,在经济、教育、科研等各大领域上的应用也将逐渐成熟化。这是线下传统管理方式无法涉及的,为此,我们要无畏艰辛,永无止步的努力探索,力求开发出更具实用且信息化的银行信用卡用户的数仓系统。综上,研究意义重大。
1.3研究内容
整个的系统的开发运用nodejs技术,express框架,以及MySql数据库技术的大力支持下同步完成该系统的开发,实现了银行信用卡用户的数仓管理信息化,使管理者在操作思路清晰且更加方便,用户也可以体验到更加优秀的银行信用卡用户的数仓系统,内容目标如下。
(1)减少后台管理人员的工作量,对用户的信息进行系统的管理;
(2)必须要方便快捷的查看搜索信息并管理信息;
(3) 用户是具有多样性的,所以界面要设置的简单明了,操作更要方便快捷。
(4)编写开发系统的技术文件。
(5)对系统进行了系统测试。
3 系统分析
为了系统的完整,必须要有可行性分析的,系统的可行性关系到生存问题,分析其意义可否利用本系统来弥补线下银行信用卡用户的数仓管理模式中的不足之处等,通过本系统来减少工作量,使管理者与用户的工作和管理效率更高。对此体现出更多的意义和价值,系统完成后,进行具体的实际分析看是否能够达到期望的要求,确定之后再开始系统的搭建开发工作。对于银行信用卡用户的数仓系统开发的搭建中,对相关技术、实际情况和操作等一系列方面进行可行性分析;
3.1可行性分析
3.1.1经济可行性
本系统所用软件均为微软软件,开发周期短,因而可节约大量时间与资源,达到降低成本之功效。并且具有很好的安全性、可靠性以及可扩展性。同时发展该银行信用卡用户的数仓系统需要的智能计算机配置很低,即使网吧中被淘汰掉的配置不高的计算机也能满足需要,因此具有充分的可行性。
3.1.3运行可行性
运行可行性也可以说是系统可用性的体现,银行信用卡用户的数仓系统本身具有运行可行性的特点,其界面的设计清晰、功能权限分配合理、操作方便。本论文设计的是银行信用卡用户的数仓系统,通过技术的结合提出一套切实可行的解决方案。不同的用户接入之后不需要经过特殊的训练就可以运行到对应功能模块中。
3.2系统用例分析
银行信用卡用户的数仓系统综合网络空间开发设计要求。目的是将银行信用卡用户的数仓系统从传统管理方式转换为在网上管理,完成银行信用卡用户的数仓管理的方便快捷、安全性高、交易规范做了保障,目标明确。银行信用卡用户的数仓系统可以将功能划分为管理员功能和用户功能。
(1)、管理员关键功能包含系统首页、个人中心、用户管理、信用卡数据管理、商品数据管理、商品信息管理、系统管理、订单管理等进行管理。
4.3数据表设计
系统创建数据库和表之间关联,期间花费了不少时间,尽力把表格完善,更好的呈现出来,让表更加明了,更加清晰。系统在MySql的可视化软件Navicat premium创建的数据表,简洁明了的设计让数据库的创建操作更加快捷,数据表的详细情况如下表所示。
表4-1:关于我们
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
subtitle varchar 200 副标题
content longtext 4294967295 内容
picture1 longtext 4294967295 图片1
picture2 longtext 4294967295 图片2
picture3 longtext 4294967295 图片3
表4-2:收藏表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
refid bigint 商品id
tablename varchar 200 表名
name varchar 200 名称
picture longtext 4294967295 图片
type varchar 200 类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注) 1
inteltype varchar 200 推荐类型
remark varchar 200 备注
表4-3:商品信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
shangpinbianhao varchar 200 商品编号
shangpinmingcheng varchar 200 商品名称
shangpintupian longtext 4294967295 商品图片
shangpinleixing varchar 200 商品类型
shangpinxiangqing longtext 4294967295 商品详情
guige varchar 200 规格
shiherenqun varchar 200 适合人群
clicktime datetime 最近点击时间
clicknum int 点击次数 0
price float 价格
表4-4:商品数据
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
baihuoshangdian varchar 200 百货商店
doushi varchar 200 都市
pindao varchar 200 频道
xingbiequnti varchar 200 性别群体
tonglingren varchar 200 同龄人
gongzuori varchar 200 工作日
chanpin varchar 200 产品
guke varchar 200 顾客
shouru float 收入
dingdan varchar 200 订单
shuliang varchar 200 数量
danweichengben float 单位成本
danweijiage float 单位价格
表4-5:商品类型
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
shangpinleixing varchar 200 商品类型
表4-6:订单
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
orderid varchar 200 订单编号
tablename varchar 200 商品表名 shangpinxinxi
userid bigint 用户id
goodid bigint 商品id
goodname varchar 200 商品名称
picture longtext 4294967295 商品图片
buynumber int 购买数量
price float 价格 0
discountprice float 折扣价格 0
total float 总价格 0
discounttotal float 折扣总价格 0
type int 支付类型 1
status varchar 200 状态
address varchar 200 地址
tel varchar 200 电话
consignee varchar 200 收货人
remark varchar 200 备注
logistics longtext 4294967295 物流
goodtype varchar 200 商品类型
表4-7:公告信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture longtext 4294967295 图片
content longtext 4294967295 内容
表4-8:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
name varchar 100 配置参数名称
value varchar 100 配置参数值
表4-9:用户
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yonghuzhanghao varchar 200 用户账号
mima varchar 200 密码
yonghuxingming varchar 200 用户姓名
xingbie varchar 200 性别
touxiang longtext 4294967295 头像
yonghudianhua varchar 200 用户电话
shenfenzhenghao varchar 200 身份证号
money float 余额 0
表4-10:购物车表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
tablename varchar 200 商品表名 shangpinxinxi
userid bigint 用户id
goodid bigint 商品id
goodname varchar 200 商品名称
picture longtext 4294967295 图片
buynumber int 购买数量
price float 单价
discountprice float 会员价
goodtype varchar 200 商品类型
表4-11:信用卡数据
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
xinyongkagukebianhao varchar 200 信用卡顾客编号
shenqingshulaiyuan varchar 200 申请书来源
xiacihu varchar 200 瑕疵户
yuqi varchar 200 逾期
daizhang varchar 200 呆账
jiekuanyue varchar 200 借款余额
tuipiao varchar 200 退票
juwangjilu varchar 200 拒往记录
qiangzhitingkajilu varchar 200 强制停卡记录
zhangshu varchar 200 张数
pinlv varchar 200 频率
huji varchar 200 户籍
doushihuachengdu varchar 200 都市化程度
xingbie varchar 200 性别
nianling varchar 200 年龄
hunyin varchar 200 婚姻
xueli varchar 200 学历
zhiye varchar 200 职业
gerenshouru varchar 200 个人收入
gerenyuekaixiao varchar 200 个人月开销
zhujia varchar 200 住家
jiatingyueshouru varchar 200 家庭月收入
yueshuakae varchar 200 月刷卡额
zongjiaoxinyang varchar 200 宗教信仰
renkoushu varchar 200 人口数
jiatingjingji varchar 200 家庭经济
xuexing varchar 200 血型
xingzuo varchar 200 星座
表4-12:地址
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
address varchar 200 地址
name varchar 200 收货人
phone varchar 200 电话
isdefault varchar 200 是否默认地址[是/否]
表4-13:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP
以上就是银行信用卡用户的数仓系统中重点使用的关键数据库表格,表格全部展示过于杂乱,选取重点表格展示。
5 系统的实现
5.1系统功能实现
当人们打开系统的网址后,首先看到的就是首页界面。在这里,人们能够看到系统的导航条。
6系统测试
系统测试是检验软件产品是否满足预期需求,确保产品无缺陷的重要手段。系统测试侧重于评估系统是否满足指定的要求,并帮助检查整个系统的功能性需求。通过对系统功能的测试用例进行分析可以发现软件存在的问题以及需要改进之处。软件可靠性设计是一项系统性工程,涉及到多个学科领域,因此其难度较大。
系统将采用黑盒测试方法对功能模块进行测试。黑盒测试即功能测试,是通过检验系统的功能是否达到预期效果来测试网站[7],它可以与预期结果相对比,看是否与预期结果一致,通过观察程序能否正确的输出信息。以此判断程序是否成功运行。
6.1系统测试的目的
系统测试(System Testing)是为给客户提供测试产品或服务的质量信息而进行的检查。系统测试还可以提供客观和独立的系统评估,以使运营者能够了解和系统实施所面临的潜在问题。系统测试包括(软件的组件,系统组件)的执行,以评估系统属性。通常这些属性表明被测组件或系统满足系统预期开发需求,在各种预期的时间内,正确响应各种系统输入,同时可以满足分析设计时要求的程度。在预期的环境中运行,并达到用户期望的总体结果。经过一系列严格功能测试,以发现系统功能方面潜在的问题,保证系统的正常运行。
6.2软件测试过程
软件测试是软件设计的收尾阶段,它是贯穿整个设计过程的,是一个巨大的任务。软件测试需要对程序所有的部分进行测试。且对每个部分的测试都是不一样的,需要在进行测试之前将它们分为以下几个阶段:
(1)单元测试(模块测试[13])
是对软件的程序代码进行检查的测试。针对软件的最小单元部分。单元测试分为人工检测和动态检测。静态检测要保证程序算法的正确性,要规范程序的逻辑性、规范性、正确性等。这一步要尽可能检测可能出现的错误。动态检测要通过比较实际结果和原先预计结果进行比较分析,找出错误。
(2)集成测试
此测试[14]是建立在单元测试基础上的,对系统的各个功能模块所进行的测试。任何的软件设计都会有集成阶段,所以在软件测试过程中,集成测试是的必定部分。在集成测试的时候,由于是对各个模块之间进行测试,所以可能在测试的时候没有发现问题,但整体测试的时候会暴露出来。同时,在进行集成测试时要小心在模块连接时注意是否有数据丢失。还要注意虽然单个模块的错误可能很少,没有影响,但拼接起来可能就会对系统产生很大影响。
(3)系统测试
系统测试紧跟集成测试进行。系统测试将已通过集成测试的部分作为整个系统的一员。和电子设备的各个软件和硬件等一起,通过实际运行进行检测,在模拟的实际环境下检测是否有错误出现。系统测试需要与计划中的理想状况作比较,发现与预想中不一样的地方。通过设计者的分析后决定如何修改。在软件实际运行的过程中,会发生很多意想不到的错误,可能测试人员也没有办法在第一时间解决问题,所以,系统测试应尽可能在实际运行下进行测试,这样才能达到更好的测试目的。
(4)验收测试
验收测试是系统在设计完成发行前最后的测试,它需要了解用户的需求。并和他们一起完成测试,同时根据他们的需求进行针对性的修改,以成为可以更好同时满足两者需求的软件。
6.3测试用例
登录功能是用户进入系统的校验窗口,其中需要填写的信息包括用户账号和用户密码,下面将根据此功能设计具体测试用例来验证登录功能的实现与否。具体测试用例见表6-1。
表6-1 登录功能测试用例
用例序号 用例描述 测试步骤 期望输出 测试结果
Test_01 页面展示 浏览器输入登录地址 进入登录页面 成功
Test_02 账号非空检验 账号为空,点击“登录”按钮 提示“用户账号必须输入” 成功
Test_03 账号存在性检验 输入不存在的账号 提示“输入的账号不存在” 成功
Test_04 密码非空检验 输入正确的账号,密码为空 提示“用户密码必须输入” 成功
Test_05 密码正确性检验 输入正确的账号和不正确的密码 提示“输入的密码错误” 成功
Test_06 登录成功检验 输入正确的账号和密码 登录成功,进入首页 成功
结论
系统阐述的是银行信用卡用户的数仓系统的设计与开发,在此系统的开发过程中应用到nodejs、MySql技术和面向接口编程。在系统的开发中应用设计开发实现,让系统之间逻辑分层清晰明确使得系统更加的合理可靠,更加坚固的保证了项目的开发健壮性和准确性。
这个系统的开发使我能够结合我以前的知识集成和改进它们。毕设就是检验我们对所学内容运用程度的时刻,对所学内容运用情况进行巩固与提高。本系统检验了自己的IT知识,同时也检验了自己运用相关知识去解决实际问题,使自己得到了一个锻炼与提升编程技能的机会。在设计上我遇到了很多困难,主要原因是我所拥有的知识不是很扎实,所以只靠几本书里的知识是远远不够的!自己经过实践取得了一些实践经验。知识不在于理解,必须学会运用,并且使之反映到实际生活中去,才是学知识的根本目的。面对困难,我学着怎样去处理,怎样去发现并分析有关的资料,此次实践使我在实际应用中有所提高,同时极大地增强了大脑的工作能力,使我在探索中获得快乐,在成功中获得幸福,是我莫大的财富。后期也将继续对系统做出进一步的优化升级。
(1) 完善操作逻辑,让系统功能更加合理。
(2) 补充完善小功能的应用,使系统更加完整实用。
(3) 精简美化系统界面,提高系统观赏度。
致谢
银行信用卡用户的数仓系统的完成,如何实现的更好,其中付出的努力是很大的,这段时光将会终身难忘。同时,学校这次期间对我的帮助真的非常的大,身边的老师与同学都十分的热情,我有很多不懂的问题都是身边的老师与同学指导我的,可以说我的成长和进步是离不开学校的老师与同学,在这段期间我的成绩技术也是比以往进步的更加迅速。这四年的校园生活让我受益匪浅,终身难忘。
首先要感谢我的指导老师。她是一位发自内心希望我们这些学生成为优秀的人的老师。我还记得他在课间时间挨个问我们毕业后的想法,推荐我们课外书籍清单,鼓励我们学习课外知识的场景。他又很有责任感,在指导我们完成毕业设计和论文的同时,还给我们讲一些需要注意的事项,真正做到了教书育人。我每一回都因为实际操作中遇到苦难而向老师发消息求助时,老师总是秒回信息,事无巨细地解释清楚,而且同步发到同学群中,对于别的同学来说也是很大的帮助。或许对于一位老师来讲,学生有所成是他们的期望。那我希望这篇论文不是我的最后一篇论文。
其次感谢我的室友。虽然前几年的生活磕磕绊绊,小矛盾不断,但是最近一年我们都平静了下来。也很庆幸,我们在这段焦虑有压力的日子里几乎没有摩擦,而是相互鼓励,谢谢你们。
还有与我密不可分的亲人。即使他们当我因为压力而发脾气时,他们也只是告诉我:“要冷静”。在很多我认为自己撑不过去的时候,是他们的安慰与默默支持让我觉得自己可以。我希望我今后可以继续努力,去成为他们心中的那个我。
所以我会格外的珍惜这次不可多得的历练,在今后的工作生活的,我会继续努力,保持学习,保证自己思想的每日提升,学校带给我的东西很多很多,这些东西是我今后继续前行的养分,真的非常感谢,能够遇到这么多的人。
最后,我向母校老师们再次表示衷心的感谢和美好的祝福,感谢你们的辛勤栽培,祝老师们幸福健康!