如何书写假数据?

里是修真院后端小课堂,每篇分享文从

【背景介绍】【知识剖析】【常见问题】【解决方案】【编码实战】【扩展思考】【更多讨论】【参考文献】

八个方面深度解析后端知识/技能,本篇分享的是:

【如何书写假数据? 】

大家好,我是IT修真院深圳分院第十期学员,一枚正直纯洁善良的JAVA程序员。

 

1.背景介绍

在一个新项目的开发中,允许的开发时间都比较短,需要前后端同时进行开发。后端开发不依赖前端,技术水平决定开发用时。但前端不同,静态页面可以独立开发,但动态页面的开发依赖于后端提供的数据。如果前端脱离后端的数据支持, 自己埋头干的话,到项目发布前肯定会有一大堆的改动;而开发时间有限,不允许等到后端接口完成开发后前端再进行开发调试。

我们来讨论一下怎么解决上面的两个问题:

A.不进行大的改动?

需要前后端协调,确定接口返回的数据结构、数据类型、对象名称等等内容,也就是对接口文档进行协议需要前后端协调,确定接口返回的数据结构、数据类型、对象名称等等内容,也就是对接口文档进行协议。实际是后端编写接口文档,然后给前端看,前端确认没问题后再进行开发。

B.在后台没有开发完全的时候,前端同时进行开发?

使用假数据。那这个假数据是由谁提供?假数据是依赖于接口文档的,而接口文档的出参、入参又依赖于DB设计,DB设计是我们后端做的,所以这个假数据是由我们后端提供的。

2.知识剖析

A.假数据是什么类型的?

假数据是JSON类型的。JSON是JS对象对象表示法,它使用javascript语法来描述数据对象。JSON语法是JS语法的子集,但JSON任然独立于语言和平台,它是存储和交换文本信息的语法,是轻量级的文本数据交换格式,所以我们使用JSON格式来提供假数据。

B.提供假数据的原则

模拟假数据,不是模拟垃圾数据。假数据仅仅是指数据不真实,并不代表着数据可以随便填。模拟数据的时候要保证数据的多样性,1是要尽可能的模拟正常使用的情况;2是要尽可能的模拟异常的情况。

3.怎么提供假数据?

A.在网上找到的答案,都是前端用mock js写假数据,这有一定的风险。有什么风险呢?上面提到了假数据要真实,如果前端对接口文档理解不透彻或者是有偏差的话,那他写的假数据就有问题,到接口联调的阶段还是会有很多问题。

B.在这里,我用的方法是上一篇文章提到的RAP。RAP自身就支持自动生成假数据,只要我们使用RAP编写接口文档,RAP就会帮我们生成假数据。在RAP中我们还可以使用@mock指定生成的假数据的格式,这些内容再RAP官方用户手册写的很清楚,RAP还有官方演示视频,非常好入门,我就不赘述了。

回到提供假数据这个主题。RAP提供了一个插件,前端在代码中引入这个插件就可以使用假数据了。

我们后端用RAP写好的接口文档后,点击页面右上角“配置”按钮,会有一行代码,这行代码就是上面提到的RAP插件。这个插件映射的就是我们刚刚写接口文档。把这行代码交给前端,前端在HTML中需要先引入JQ,紧跟着再引入RAP插件,就可以使用假数据了。

详细的过程在下面的视频中。

 

 

 

3.常见问题

如何提供多个数据

 

4.解决方案

zwp.duoluobo.entryBannerShow {
    String String String String String [] = {}String[] = {}String[] = {}String[] = {}[] = {}[] = {}[] = {}[] = {}[] = {}String[] = {}String[] = { }(typesize) {
        i = size % .= [i].= size.= [i]}

    () {
        }

    (id) {
        .= id}

    String () {
        }

    (String photo) {
        .= photo}

    String () {
        }

    (String jumpUrl) {
        .= jumpUrl}

    String () {
        +
                + +
                + + +
                + + +
                + +
                + + +
                + +
                + +
                + +
                + +
                + +
                + + +
                + + +
                }
}

 

6.扩展思考

 

7、参考文献

方志鹏CSDN

SpringBoot的swagger2

 

8、更多讨论

1、问:springcloud 可以结合zookeeper吗?

     答:springcloud可以使用zookeeper作为注册中心,也可以用consul作为注册中心,并非一定要用eureka。只不过使用eureka的话,能共使用Netflix的oss组件,搭建起来更加方便。

 

2、http请求地址和资源文件映射有什么内容

 

/{application}/{profile}[/{label}]

/{application}-{profile}.yml

/{label}/{application}-{profile}.yml

/{application}-{profile}.properties

/{label}/{application}-{profile}.properties

3、swagger2需要什么依赖

  1. io.springfoxspringfox-swagger22.6.1io.springfoxspringfox-swagger-ui2.6.1

PPT链接 视频链接

------------------------------------------------------------------------------------------------------------
“我们相信人人都可以成为一个工程师,现在开始,找个师兄,带你入门,学习的路上不再迷茫。

技能树.IT修真院

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值