Android Studio 优秀插件:GsonFormat
作为一个Android程序猿,当你看到后台给你的json数据格式时:
{
"id":123,
"url": "http://img.donever.com/aa/bb.jpg",
"width":500,
"height":500,
"likeCount":1,
"description":"嘿嘿",
"time":1234567890,
"replyCount":0,
"floorCount":0,
"likeUserCount":5,
"age":14,
"name":"jack",
"school":"beijing",
"type":1,
"sax":"boy",
"userid":1223
}
是不是要默默的创建一个类,然后一个个变量的private 一下,然后get()+set()?
如果一个json数据提供的属性20+条或者30+条呢,一个个属性去写,还要保证字母不写错,大小写也没错,是不是既浪费时间又浪费精力,那么就试试使用GsonFormat插件吧
现在学习下如何使用这个插件:
1、Android Studio 打开一个项目,点击左上角 File -->Settings... 进行设置
2、选择插件Plugins , 搜索GsonFormat ,如果你没有下载过这个插件,那么搜索框下面会显示“Nothing to show.Click Browse to....”
3、那就点击蓝色字体的 Browse 吧 ,这个时候会出现如下图的界面,我们只需要在左边选中GsonFormat 然后点击右面 绿色按钮 "Install plugin" 就可以了
4、完成了上面三个步骤,就可以使用GsonFormat插件了
怎么用呢,
(1)创建一个类文件,类名是看你需求自定义写的
(2)快捷键 alt+insert ,会出现如下选择框
(3)我们点击第一个选项,GsonFormat,就会出现一个新的框,
然后只需要将服务器给你的json数据的 格式复制进去 ,如下所示,点击Ok就可以了(注意json格式不要出错,比如不要少了每个属性后面的逗号)
(4)最后一步,出现这么一个框,这里你可以进行相应的编辑,比如吧一个属性的类型改变,或者 去掉属性前面的蓝底白勾,让类不具有某个属性
效果类:
public class People { /**
* id : 123
* url : http://img.donever.com/aa/bb.jpg
* width : 500
* height : 500
* likeCount : 1
* description : 嘿嘿
* time : 1234567890
* replyCount : 0
* floorCount : 0
* likeUserCount : 5
* age : 14
* name : jack
* school : beijing
* type : 1
* sax : boy
* userid : 1223
*/ private int id;
private String url;
private int width;
private int height;
private int likeCount;
private String description;
private int time;
private int replyCount;
private int floorCount;
private int likeUserCount;
private int age;
private String name;
private String school;
private int type;
private String sax;
private int userid; public static People objectFromData(String str) {
Gson gson = new Gson(); return new com.google.gson.Gson().fromJson(str, People.class);
} public void setId(int id) {
this.id = id;
} public void setUrl(String url) {
this.url = url;
} public void setWidth(int width) {
this.width = width;
} public void setHeight(int height) {
this.height = height;
} public void setLikeCount(int likeCount) {
this.likeCount = likeCount;
} public void setDescription(String description) {
this.description = description;
} public void setTime(int time) {
this.time = time;
} public void setReplyCount(int replyCount) {
this.replyCount = replyCount;
} public void setFloorCount(int floorCount) {
this.floorCount = floorCount;
} public void setLikeUserCount(int likeUserCount) {
this.likeUserCount = likeUserCount;
} public void setAge(int age) {
this.age = age;
} public void setName(String name) {
this.name = name;
} public void setSchool(String school) {
this.school = school;
} public void setType(int type) {
this.type = type;
} public void setSax(String sax) {
this.sax = sax;
} public void setUserid(int userid) {
this.userid = userid;
} public int getId() {
return id;
} public String getUrl() {
return url;
} public int getWidth() {
return width;
} public int getHeight() {
return height;
} public int getLikeCount() {
return likeCount;
} public String getDescription() {
return description;
} public int getTime() {
return time;
} public int getReplyCount() {
return replyCount;
} public int getFloorCount() {
return floorCount;
} public int getLikeUserCount() {
return likeUserCount;
} public int getAge() {
return age;
} public String getName() {
return name;
} public String getSchool() {
return school;
} public int getType() {
return type;
} public String getSax() {
return sax;
} public int getUserid() {
return userid;
}
} People
如果要使用Gson解析的话 ,即 通过Json字符串直接获取对应的类对象
public static People objectFromData(String str) {
Gson gson = new Gson();
return gson.fromJson(str, People.class);
}
记得在build.gradle 中加上
compile 'com.google.code.gson:gson:2.4'
Android Studio 优秀插件:GsonFormat的更多相关文章
- Android开发实战(十八):Android Studio 优秀插件:GsonFormat
Android Studio 优秀插件系列: Android Studio 优秀插件(一):GsonFormat Android Studio 优秀插件(二): Parcelable Code Gen ...
- Android项目实战(十九):Android Studio 优秀插件: Parcelable Code Generator
Android Studio 优秀插件系列: Android Studio 优秀插件(一):GsonFormat Android Studio 优秀插件(二): Parcelable Code Gen ...
- Android Studio安装插件GsonFormat
Android Studio菜单栏File > Settings > plugins' 这个是Android Studio搜索和安装插件的界面,下面直接上动图 : 安装结束后需要关闭重新启 ...
- Android Studio 优秀插件汇总
第一部分 插件的介绍 Google 在2013年5月的I/O开发者大会推出了基于IntelliJ IDEA java ide上的Android Studio.AndroidStudio是一个功能齐全的 ...
- 拿走不谢!22 个 Android Studio 优秀插件汇总
Google 在2013年5月的I/O开发者大会推出了基于IntelliJ IDEA java ide上的Android Studio.AndroidStudio是一个功能齐全的开发工具,还提供了第三 ...
- Android Studio 优秀插件: Parcelable Code Generator
这里假设我们已经会使用 Parcelable 序列化一个对象了~~ 那么大家会发现 Parcelable 使用起来有些复杂,因为我们要自己复写 几个方法,而且当类的属性比较多的时候,我们就会难受了,又 ...
- Android Studio优秀插件汇总
- [Android Studio]SQLScout插件安装破解
以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/5972138.html [Android Studio]SQLS ...
- Android Studio 工具插件
1.Android Studio 翻译插件,可以将英文翻译为中文. https://github.com/Skykai521/ECTranslation 2.Android Studio之Androi ...
随机推荐
- hdu6312 2018杭电多校第二场 1004 D Game 博弈
Game Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- 通过原型继承理解ES6 extends 如何实现继承
前言 第一次接触到 ES6 中的 class 和 extends 时,就听人说这两个关键字不过是语法糖而已.它们的本质还是 ES3 的构造函数,原型链那些东西,没有什么新鲜的,只要理解了原型链等这些概 ...
- Accuarcy and Precision
机器学习中,Accuarcy 和 Precision 有什么区别呢? Accuracy = (TP+TN)/TOTAL SAMPLES 也就是计算正确的样本数,占到总样本数的比率 定义是: 对于给定的 ...
- MySQL中boolean类型设置
在用MySQL设置boolean的时候发现跟本就没有这种类型,后来查资料才知道: boolean类型用tinyint表示, MYSQL保存BOOLEAN值时用1代表TRUE,0代表FALSE,bool ...
- Python 基础 3 - 元组
元组与列表区别 Python 元组与列表类似,不同之处在于列表可以修改,元组不可以修改 元组用小括号 () 定义,列表用方括号 [] 定义 元组不可修改,列表可修改 元组创建 只需要在小括号 () 内 ...
- F#周报2019年第37期
新闻 宣告ML.NET 1.4的预览版及更新模型构建器 .NET展示会:一系列的活动! Octopus入门版:对于小团队免费 宣告.NET Core 3.0预览版9 使用IntelliCode更简单地 ...
- 原创 | 手摸手带您学会 Elasticsearch 单机、集群、插件安装(图文教程)
欢迎关注笔者的公众号: 小哈学Java, 每日推送 Java 领域干货文章,关注即免费无套路附送 100G 海量学习.面试资源哟!! 个人网站: https://www.exception.site/ ...
- 一步一步搞安卓开发(AndroidStudio)
一.前言 好长时间没做过Android应用开发了,由于工作需要,又要开始做这一块了.记得之前都是用Eclipse+ADT+ADK来开发的,官网上下载个adt-bundle就可以了,现在官方已经不更新了 ...
- Android 网络通信框架Volley(二)
Volley提供2个静态方法: public static RequestQueue newRequestQueue(Context context) {} public static Request ...
- sqoop导oracle数据到hive中并动态分区
静态分区: 在hive中创建表可以使用hql脚本: test.hql USE TEST; CREATE TABLE page_view(viewTime INT, userid BIGINT, pag ...