Android studio 插件之 GsonFormat (自己主动生成javabean)
概述
相信大家在做开发的过程中都写过非常多的javabean ,非常多情况下 都是一个列表数据就是一个单独的javabean。假设大家自己敲的话费时费力 还非常easy敲错。
今天给大家推荐一个插件 GsonFormat 这个插件就是能够让我们直接将服务端返回的json转化为实体类。Android studio和idea都有, eclipse我没有试过。
大家能够找找有没有。
操作步骤
第一步 下载插件
下载插件的过程我前面有一篇博客已经有具体步骤 Android Studio插件之sexy editor(设置AS背景) 大家 仅仅须要将那篇博客中介绍的插件名称换成GsonFormat
依照那个步骤下载好 插件。记得下载安装好后要重新启动哦。
第二步 自己主动生成bean
以下我们介绍怎么通过这个插件将服务端返回的json自己主动生成javabean
首先 我们要建一个空的java类,然后 在空白出点击鼠标右键 选择 Generate... 假设你已经安装成功好插件会弹出以下这个框
选择GsonFormat会弹出以下这个框
将服务端接返回的json 粘贴到这个里面 点击ok
粘贴完毕后 点击ok会弹出例如以下图所看到的的选择 字段界面
这个界面是让你自己选择 保留哪些字段。可能有的字段不须要 就把前面的对勾去掉就能够了。最后点击ok。大功告成。
贴上json字符串和自己主动生成出的bean代码.
json字符串
<span style="font-size:14px;">{"retval":"ok","reterr":"","retinfo":{"count":2,"groups":[{"groupid":1,"title":"\u65b0\u670b\u53cb","icon":"http:\/\/aliimg.yizhibo.tv\/online\/message\/2f\/74\/hi.png","type":"1","readcnt":67,"unread":2,"total":19,"update_time":"2016-04-05 09:11:09","lastest_content":{"type":2,"data":{"name":"16837286","nickname":"\u963f\u83b2","gender":"female","signature":"","vip":"0","logourl":"http:\/\/aliimg.yizhibo.tv\/online\/user\/2c\/17\/60ec3f44e8a0de9db1d87f1a59875ce1.jpg@100h_100w_90Q_0e_1c"}}},{"groupid":0,"title":"\u6613\u76f4\u64ad\u5c0f\u79d8\u4e66","icon":"http:\/\/aliimg.yizhibo.tv\/online\/message\/07\/fd\/Secretary.png","type":0,"readcnt":86,"unread":0,"total":86,"update_time":"2016-04-01 00:09:28","lastest_content":{"type":0,"data":{"text":"\u611a\u4eba\u8282\u6765\u4e34\u4e4b\u9645\uff0c\u5fc3\u4e2d\u7684\u5c0f\u6076\u9b54\u6b63\u5728\u9a9a\u52a8\u3002\u6613\u76f4\u64ad\u611a\u4eba\u8282\u65e0\u654c\u5927\u738b\u4e89\u9738\u96c6\u7ed3\u53f7\u4e5f\u501f\u52bf\u90aa\u6076\u5439\u54cd\uff01\u770b\u5404\u5927\u5bb6\u5982\u4f55\u5927\u65bd\u8ff7\u9b42\u9635\uff0c\u6597\u5fd7\u6597\u52c7\uff0c\u620e\u9a6c\u800c\u5f52\u3002\u201c\u611a\u4eba\u5927\u738b\u201d\u3001\u201c\u8303\u4e8c\u5927\u738b\u201d\u7a76\u7adf\u82b1\u843d\u8c01\u5bb6\u5462\uff1f\u54b1\u4eec\u62ed\u76ee\u4ee5\u5f85\uff01"}}}]}}</span>
生成的bean
<span style="font-size:14px;">
import java.util.List; public class MessageGroupEntity {
/**
* retval : ok
* reterr :
* retinfo : {"count":2,"groups":[{"groupid":1,"title":"新朋友",
* "icon":"http://aliimg.yizhibo.tv/online/message/2f/74/hi.png","type":"1","readcnt":67,
* "unread":2,"total":19,"update_time":"2016-04-05 09:11:09","lastest_content":{"type":2,
* "data":{"name":"16837286","nickname":"阿莲","gender":"female","signature":"","vip":"0",
* "logourl":"http://aliimg.yizhibo.tv/online/user/2c/17/60ec3f44e8a0de9db1d87f1a59875ce1.jpg@100h_100w_90Q_0e_1c"}}}
* ,{"groupid":0,"title":"易直播小秘书","icon":"http://aliimg.yizhibo.tv/online/message/07/fd/Secretary.png","type":0,"readcnt":86,
* "unread":0,"total":86,"update_time":"2016-04-01 00:09:28",
* "lastest_content":{"type":0,"data":{"text":"愚人节来临之际。心中的小恶魔正在骚动。易直播愚人节无敌大王争霸集结号也借势邪恶吹响!
* 看各大家怎样大施迷魂阵,斗志斗勇,戎马而归。 \u201c愚人大王\u201d、\u201c范二大王\u201d到底花落谁家呢?咱们拭目以待!"}}}]}
*/ private String retval;
private String reterr;
/**
* count : 2
* groups : [{"groupid":1,"title":"新朋友",
* "icon":"http://aliimg.yizhibo.tv/online/message/2f/74/hi.png","type":"1","readcnt":67,
* "unread":2,"total":19,"update_time":"2016-04-05 09:11:09",
* "lastest_content":{"type":2,"data":{"name":"16837286","nickname":"阿莲","gender":"female",
* "signature":"","vip":"0","logourl":"http://aliimg.yizhibo.tv/online/user/2c/17/60ec3f44e8a0de9db1d87f1a59875ce1.jpg@100h_100w_90Q_0e_1c"}}},
* {"groupid":0,"title":"易直播小秘书","icon":"http://aliimg.yizhibo.tv/online/message/07/fd/Secretary.png",
* "type":0,"readcnt":86,"unread":0,"total":86,"update_time":"2016-04-01 00:09:28","lastest_content":
* {"type":0,"data":{"text":"愚人节来临之际,心中的小恶魔正在骚动。易直播愚人节无敌大王争霸集结号也借势邪恶吹响!看各大家怎样大施迷魂阵。斗志斗勇。戎马而归。
* \u201c愚人大王\u201d、\u201c范二大王\u201d到底花落谁家呢?咱们拭目以待!"}}}]
*/ private RetinfoEntity retinfo; public void setRetval(String retval) {
this.retval = retval;
} public void setReterr(String reterr) {
this.reterr = reterr;
} public void setRetinfo(RetinfoEntity retinfo) {
this.retinfo = retinfo;
} public String getRetval() {
return retval;
} public String getReterr() {
return reterr;
} public RetinfoEntity getRetinfo() {
return retinfo;
} public static class RetinfoEntity {
private int count;
/**
* groupid : 1
* title : 新朋友
* icon : http://aliimg.yizhibo.tv/online/message/2f/74/hi.png
* type : 1
* readcnt : 67
* unread : 2
* total : 19
* update_time : 2016-04-05 09:11:09
* lastest_content : {"type":2,"data":{"name":"16837286","nickname":"阿莲","gender":"female","signature":"","vip":"0","logourl":"http://aliimg.yizhibo.tv/online/user/2c/17/60ec3f44e8a0de9db1d87f1a59875ce1.jpg@100h_100w_90Q_0e_1c"}}
*/ private List<GroupsEntity> groups; public void setCount(int count) {
this.count = count;
} public void setGroups(List<GroupsEntity> groups) {
this.groups = groups;
} public int getCount() {
return count;
} public List<GroupsEntity> getGroups() {
return groups;
} public static class GroupsEntity {
private int groupid;
private String title;
private String icon;
private String type;
private int readcnt;
private int unread;
private int total;
private String update_time;
/**
* type : 2
* data : {"name":"16837286","nickname":"阿莲","gender":"female","signature":"","vip":"0","logourl":"http://aliimg.yizhibo.tv/online/user/2c/17/60ec3f44e8a0de9db1d87f1a59875ce1.jpg@100h_100w_90Q_0e_1c"}
*/ private LastestContentEntity lastest_content; public void setGroupid(int groupid) {
this.groupid = groupid;
} public void setTitle(String title) {
this.title = title;
} public void setIcon(String icon) {
this.icon = icon;
} public void setType(String type) {
this.type = type;
} public void setReadcnt(int readcnt) {
this.readcnt = readcnt;
} public void setUnread(int unread) {
this.unread = unread;
} public void setTotal(int total) {
this.total = total;
} public void setUpdate_time(String update_time) {
this.update_time = update_time;
} public void setLastest_content(LastestContentEntity lastest_content) {
this.lastest_content = lastest_content;
} public int getGroupid() {
return groupid;
} public String getTitle() {
return title;
} public String getIcon() {
return icon;
} public String getType() {
return type;
} public int getReadcnt() {
return readcnt;
} public int getUnread() {
return unread;
} public int getTotal() {
return total;
} public String getUpdate_time() {
return update_time;
} public LastestContentEntity getLastest_content() {
return lastest_content;
} public static class LastestContentEntity {
private int type;
/**
* name : 16837286
* nickname : 阿莲
* gender : female
* signature :
* vip : 0
* logourl : http://aliimg.yizhibo.tv/online/user/2c/17/60ec3f44e8a0de9db1d87f1a59875ce1.jpg@100h_100w_90Q_0e_1c
*/ private DataEntity data; public void setType(int type) {
this.type = type;
} public void setData(DataEntity data) {
this.data = data;
} public int getType() {
return type;
} public DataEntity getData() {
return data;
} public static class DataEntity {
private String name;
private String nickname;
private String gender;
private String signature;
private String vip;
private String logourl; public void setName(String name) {
this.name = name;
} public void setNickname(String nickname) {
this.nickname = nickname;
} public void setGender(String gender) {
this.gender = gender;
} public void setSignature(String signature) {
this.signature = signature;
} public void setVip(String vip) {
this.vip = vip;
} public void setLogourl(String logourl) {
this.logourl = logourl;
} public String getName() {
return name;
} public String getNickname() {
return nickname;
} public String getGender() {
return gender;
} public String getSignature() {
return signature;
} public String getVip() {
return vip;
} public String getLogourl() {
return logourl;
}
}
}
}
}
}
</span>
大概流程就是这样,希望对大家有所帮助。
欢迎大家增加我的qq 群:454430053
Android studio 插件之 GsonFormat (自己主动生成javabean)的更多相关文章
- Android Studio插件推荐-GsonFormat,ButterKnifeZelezny
原创文章.转载请注明 http://blog.csdn.net/leejizhou/article/details/50557786 本篇介绍的仅仅适用android studio和 Intellij ...
- Android Studio插件之MVPHelper,一键生成MVP代码
MVP盛行,听到的最多的抱怨就是咋要写这么多接口,那么本文作者提供了一个插件,自动生成这些接口的声明.感兴趣的还可以学习该插件的写法,按照自己平时的需求修改,提供开发效率. MVPHelper 一款I ...
- 最完整Android Studio插件整理 (转)
转自:http://blog.csdn.net/alpha58/article/details/62881144 现在Android的开发者基本上都使用android Studio进行开发(如果你还在 ...
- [Android实例] Android Studio插件-自动根据布局生成Activity等代码1.4 (开源)(申明:来源于网络)
[Android实例] Android Studio插件-自动根据布局生成Activity等代码1.4 (开源)(申明:来源于网络) 地址:http://www.eoeandroid.com/thre ...
- Android Studio插件:GsonFromat
这个Android Studio插件可以根据JSONObject格式的字符串,自动生成实体类参数. 具体见:https://github.com/zzz40500/GsonFormat
- 推荐几款实用的Android Studio 插件
推荐几款实用的Android Studio 插件 泡在网上的日子 发表于 2015-10-09 10:47 第 17453 次阅读 插件,Android Studio 10 编辑推荐:稀土掘金,这是一 ...
- [精品推荐]Android Studio插件整理
GOOD 现在Android的开发者基本上都使用Android Studio进行开发(如果你还在使用eclipse那也行,毕竟你乐意怎么样都行).使用好Android Studio插件能大量的减少我们 ...
- 自己编写Android Studio插件 别停留在用的程度了(转载)
转自:自己编写Android Studio插件 别停留在用的程度了 1概述 相信大家在使用Android Studio的时候,或多或少的会使用一些插件,适当的配合插件可以帮助我们提升一定的开发效率,更 ...
- 非常有用的开发工具之Android Studio插件
我们都知道Eclipse开发Android将在今年年底google不再继续提供相应的开发支持,转而开始强烈发展Android Studio,现在我就分享几款能帮助团队提升工作效率的几个Android ...
随机推荐
- React和webpack解决 waiting for roots to load...to reload the inspector
使用chrome调试工具,react-devtools总是显示 "waiting for roots to load...to reload the inspector" and ...
- element-UI el-table表格根据搜索条件表格值改变颜色
Part.1 关键代码 var s = "天气"; // 需要匹配的字符 var reg = new RegExp("(" + s + ")" ...
- python中的next()以及iter()函数
我们首先要知道什么是可迭代的对象(可以用for循环的对象)Iterable: 一类:list,tuple,dict,set,str 二类:generator,包含生成器和带yield的generato ...
- 06网络通信udp-tcp、正则
一. udp网络程序 1. udp网络程序-发送数据 1)创建客户端套接字 2)发送/接收数据 3)关闭套接字 from socket import * # 1. 创建udp套接字 udp_so ...
- 「 HDU P4734 」 F(x)
# 题目大意 对于一个数 $x$,它的每一位数字分别是 $A_{n}A_{n-1}A_{n-2}\cdots A_{2}A_{1}$,定义其权重 $f(x)=\sum_{i=1}^{n}\left(A ...
- 笔试算法题(11):Josephus环 & Fibonacci序列
出题:Josephus Cycle,约瑟夫环问题.k个数字连成一个环,第一个数字为1.首先从1开始计数删除第m个数字:然后从上次被删除的数字的下一个数字开始计数,删除第m个数字:重复进行第二步直到只剩 ...
- Linux中find命令用法大全
Linux 查找命令是Linux系统中最重要和最常用的命令之一.查找用于根据与参数匹配的文件指定的条件来搜索和查找文件和目录列表的命令.查找可以在各种条件下使用,您可以通过权限,用户,组,文件类型,日 ...
- linux nslookup-查询域名DNS信息的工具
博主推荐:更多网络测试相关命令关注 网络测试 收藏linux命令大全 nslookup命令是常用域名查询工具,就是查DNS信息用的命令. nslookup4有两种工作模式,即“交互模式”和“非交互模 ...
- stark组件之显示页面内容搭建(六)
之前主要介绍了前端页面list_fiter功能的显示,但是list_display功能的展示并没有过多介绍,这里介绍一下是如何实现的. 可以看到凡是蓝线圈起来的都是通过字段名反射一个个取出来的,红线的 ...
- Python面向对象之多态
多态 面向对象三大特性 封装 根据职责将属性和方法封装到一个抽象的类中:--定义类的准则 继承 实现代码的重用,相同的代码不需要重复的编写:--设计类的技巧:子类针对自己的需求,编写特定的代码: 多态 ...