VSCode插件 - Json生成不同语言的数据结构
简介在编码的过程中有没有觉得一堆json要转换成自己想要的数据结构要一个字段一个字段去些,感觉非常难受,又费时间又不安逸。对于一个程序员最喜欢偷懒,在VSCode有一款插件解决了这个问题:Paste JSON as Code。
            在编码的过程中有没有觉得一堆json要转换成自己想要的数据结构要一个字段一个字段去些,感觉非常难受,又费时间又不安逸。对于一个程序员最喜欢偷懒,在VSCode有一款插件解决了这个问题:Paste JSON as Code。
支持很多语言:TypeScript, Python, Go, Ruby, C#, Java, Swift, Rust, Kotlin, C++, Flow, Objective-C, JavaScript, Elm, and JSON Schema
安装插件
Ctrl+Shift+X:搜索Paste JSON as Code,安装
JSON示例
{
    "status_code":200,
    "message":"成功",
    "data":{
        "all":[
            {
                "category_id":"",
                "category_name":"全部类别",
                "category_count":""
            }
            {
                "category_id":"学习规划",
                "category_name":"学习规划",
                "category_count":"4"
            }]
    }
}
以上是一个非常通用的接口返回数据格式
生成数据结构
- 新建一个文件,如果是go语言就是xxx.go、如果是java就是xxx.java等,包含很多语言
- 复制上面的json
- Ctrl+Shift+P(必须是在第一步新建的文件中执行)
- 选择Paste Json As Code 回车
- 粘贴上面复制的json数据,回车
- 生成内容
生成go数据结构
// Generated by https://quicktype.io
type StatusCode200Message成功DataAllCategoryIDCategoryName全部类别CategoryCountCategoryID语文CategoryName语文CategoryCount48CategoryID阅读CategoryName阅读CategoryCount7CategoryID学习规划CategoryName学习规划CategoryCount4 struct {
    StatusCode int64  `json:"status_code"`
    Message    string `json:"message"`    
    Data       Data   `json:"data"`       
}
type Data struct {
    All []All `json:"all"`
}
type All struct {
    CategoryID    string `json:"category_id"`   
    CategoryName  string `json:"category_name"` 
    CategoryCount string `json:"category_count"`
}
生成java的数据结构
// StatusCode200MessageDataAllCategoryIDCategoryNameCategoryCountCategoryIDCategoryNameCategoryCount4.java
// Generated by https://quicktype.io
package io.quicktype;
import java.util.Map;
public class StatusCode200MessageDataAllCategoryIDCategoryNameCategoryCountCategoryIDCategoryNameCategoryCount4 {
    private long statusCode;
    private String message;
    private Data data;
    public long getStatusCode() { return statusCode; }
    public void setStatusCode(long value) { this.statusCode = value; }
    public String getMessage() { return message; }
    public void setMessage(String value) { this.message = value; }
    public Data getData() { return data; }
    public void setData(Data value) { this.data = value; }
}
// Data.java
package io.quicktype;
import java.util.Map;
public class Data {
    private All[] all;
    public All[] getAll() { return all; }
    public void setAll(All[] value) { this.all = value; }
}
// All.java
package io.quicktype;
import java.util.Map;
public class All {
    private String categoryID;
    private String categoryName;
    private String categoryCount;
    public String getCategoryID() { return categoryID; }
    public void setCategoryID(String value) { this.categoryID = value; }
    public String getCategoryName() { return categoryName; }
    public void setCategoryName(String value) { this.categoryName = value; }
    public String getCategoryCount() { return categoryCount; }
    public void setCategoryCount(String value) { this.categoryCount = value; }
}
是不是感觉非常方便,为自己开发减轻了很多工作量。
 快速生成表格
快速生成表格 nodejs中使用npm和yarn,使用最新阿里云镜像 aliyun mirror,网上很多还是文章用的是下面这个地址~~yarn config set registry https://registry.npm.taobao.org~~
nodejs中使用npm和yarn,使用最新阿里云镜像 aliyun mirror,网上很多还是文章用的是下面这个地址~~yarn config set registry https://registry.npm.taobao.org~~ 《是妈妈是女儿》聚焦母女间未曾言明的爱意,以书信对话的形式呈现出各自的内心独白,表达彼此的牵挂。黄绮珊与希林娜依·高用跨越时空、打开心扉、深情对唱的形式,将天下母女爱的寄语化作心灵的倾诉。黄绮珊的每一句话,每一个字都演绎出了妈妈对女儿的爱,而希林依娜·高把女儿对妈妈的爱由不理解到理解再到感恩演绎得淋漓尽致。
《是妈妈是女儿》聚焦母女间未曾言明的爱意,以书信对话的形式呈现出各自的内心独白,表达彼此的牵挂。黄绮珊与希林娜依·高用跨越时空、打开心扉、深情对唱的形式,将天下母女爱的寄语化作心灵的倾诉。黄绮珊的每一句话,每一个字都演绎出了妈妈对女儿的爱,而希林依娜·高把女儿对妈妈的爱由不理解到理解再到感恩演绎得淋漓尽致。 Towxml 是一个让小程序(微信/QQ)可以解析Markdown、HTML的解析库。能够使小程序完美解析Markdown内容。
Towxml 是一个让小程序(微信/QQ)可以解析Markdown、HTML的解析库。能够使小程序完美解析Markdown内容。 默认情况下 pip 使用的是国外的镜像,在下载的时候速度非常慢,本文我们介绍使用国内源对pip进行加速。
默认情况下 pip 使用的是国外的镜像,在下载的时候速度非常慢,本文我们介绍使用国内源对pip进行加速。 Electron页面跳转、浏览器打开链接和打开新窗口
Electron页面跳转、浏览器打开链接和打开新窗口 Docker编译镜像出现:fetch http://dl-cdn.alpinelinux.org/alpine/v3.12/main/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.12/main: temporary error (try again later)
WARNING: Ignoring APKINDEX.2c4ac24e.tar.gz: No such file or directory问题
Docker编译镜像出现:fetch http://dl-cdn.alpinelinux.org/alpine/v3.12/main/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.12/main: temporary error (try again later)
WARNING: Ignoring APKINDEX.2c4ac24e.tar.gz: No such file or directory问题 在Mac电脑中,如何对Git的用户名和密码进行修改呢?起初不懂Mac,所以整了很久,本文将记录如何对这个进行操作,以便后期使用。
在Mac电脑中,如何对Git的用户名和密码进行修改呢?起初不懂Mac,所以整了很久,本文将记录如何对这个进行操作,以便后期使用。 在使用Git的过程中,不想每次都输入用户名和密码去拉取代码,所以就需要保存这些信息,那么既然有保存了,就必须有清除功能。
在使用Git的过程中,不想每次都输入用户名和密码去拉取代码,所以就需要保存这些信息,那么既然有保存了,就必须有清除功能。