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; }
}
是不是感觉非常方便,为自己开发减轻了很多工作量。
在使用阿里云RDS中,一般我们出于权限的考虑不会让其他用户直接进行外网访问。所以这里我们就采用Navicat加HTTP通道来访问RDS数据库。
在使用uni-app开发微信小程序的过程中,要解析markdown那么就可以使用Towxml组件,本文主要介绍下如何在uni-app中添加Towxml组件。
《是妈妈是女儿》聚焦母女间未曾言明的爱意,以书信对话的形式呈现出各自的内心独白,表达彼此的牵挂。黄绮珊与希林娜依·高用跨越时空、打开心扉、深情对唱的形式,将天下母女爱的寄语化作心灵的倾诉。黄绮珊的每一句话,每一个字都演绎出了妈妈对女儿的爱,而希林依娜·高把女儿对妈妈的爱由不理解到理解再到感恩演绎得淋漓尽致。
对于小于2TB的磁盘可以使用fdisk和parted命令进行分区,一般采用fdisk命令。但是对于大于2TB的磁盘只能使用parted分区,且需要将磁盘转换为GPT格式。
cfssl生成自签证书
快速生成表格
Electron页面跳转、浏览器打开链接和打开新窗口
在使用Git的过程中,不想每次都输入用户名和密码去拉取代码,所以就需要保存这些信息,那么既然有保存了,就必须有清除功能。
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,所以整了很久,本文将记录如何对这个进行操作,以便后期使用。