-
使用Gson生成json 1.new Gson().toJson(Object) //将对象转化为json,返回类型为String 2.Gson GsonBuild.create(); //使用该方法可以设置构建的一些设置 2.1 如 gsonBuild.setPrettyPrinting();// 可以使打印出来的json 格式化 2.2 gsonBuild.setFieldNamingStrategy(new FieldNamingStrategy(){...}); 设置名字 3.@SerializedName("") 该注解可使生成的json名称和注解一致,而非变量名 4.使用 transient 修饰的变量,在生成json时,忽略该变量。查看全部
-
引入依赖 <dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> <version>20090211</version> </dependency> 使用JsonObject实现Json package json; import org.json.JSONException; import org.json.JSONObject; public class JSONObjectSample { public static void main(String[] args) { // TODO 自动生成的方法存根 JSONObject(); } private static void JSONObject() { // TODO 自动生成的方法存根 JSONObject wangxiaoer = new JSONObject(); Object nullObj = null; try { wangxiaoer.put("name", "王小二"); wangxiaoer.put("age", 25.2); wangxiaoer.put("birthday", "1990-01-01"); wangxiaoer.put("school", "蓝翔"); wangxiaoer.put("major", new String[] { "理发", "挖掘机" }); wangxiaoer.put("has_girlfriend", false); wangxiaoer.put("car", nullObj); wangxiaoer.put("house", nullObj); wangxiaoer.put("comment", "这是一个注释"); System.out.println(wangxiaoer.toString()); } catch (JSONException e) { // TODO: handle exception e.printStackTrace(); } } }查看全部
-
Gson 解析外部文件的json数据 File file = new File(该类类名.class.getResource("/xiaoming.json").getFile()); String content = FileUtils.readFileToString(file);//此处抛出IO异常,commons.io.jar Gson gson = new Gson(); Diaosi wangxiaoer = gson.from(content,Diaosi.class); sysout.out.println(wangxiaoer);查看全部
-
解析json: pom.xml里一个依赖 commons-io 从文件中间读取json内容 // 声明这个文件 File file = new File(ReadJSONSample.class.getResource("/wangxiaoer.json").getFile()); //通过依赖 FileUtils String content = FileUtils.readFileToString(file); //通过 JSONObject 这个对象进行处理 JSONObject jsonObject = new JSONObject(content);
如何解释Json数据 JSONObject json=new JSONObject(content); System.out.println("姓名:"+json.getString("name")); Sytem.out.println("年龄:"+json.getInt("age")); System.out.println("是否有车:"+json.getBoolean("car")); JSONArray array=json.getJSONArray("major"); for(int I=0;i<array.length();I++) { String s=(String)array.get(I); System.outprintln("专业:"+(I+1)+m)); }
查看全部 -
jsonObject.isNull(key) // key 字符串 判断文件中的数据是否为空。查看全部
-
本章介绍使用Google的GSON包来生成和解析JSON格式数据。除此以外,还包括GSON解析带日期的数据,以及集合类解析。
GSON简介——
GSON:开源的第三方工具,可以用来解析JSON数据,相比JSON,功能更全面,性能更出色,使用方式更加便捷。
查看全部 -
本章简介:使用org.json包来完成JSON格式数据的生成和解析。包括使用Map和Java Bean构建对象,以及如何从文件读取JSON数据。
Java中使用org.json包来完成JSON格式数据的生成:
JSON官网网站最下方的列表,提供了所有开发语言JSON包,包括我们讲解到经常使用的、常见的org.json,通过这个包,就可以使用JSON。
案例:创建一个名字为json的Maven项目,首先,引入org.json的依赖(引入依赖方法:http://mvnrepository.com/artifact/org.json/json,下面很多版本,选一个点进去,复制<dependency></dependency>这段代码。在eclipse中新建一个maven项目,在</project>前输入<dependencies>把复制的代码粘贴在这里</dependencies>,接着右键maven项目,maven->update maven...。),引入之后我们就可以使用JSON Object这个对象,JSON Object的使用文档(http://stleary.github.io/JSON-java/index.html)进行具体的查看,只有一个接口,很少的类,并且我们经常使用到的是JSONObject这个类,还有一个JSON的异常。
使用JSONObject生成JSON数据:采用上节课王小二JSON的例子,在java项目中创建一个包叫json,并在该包下创建名为JsonObjectSample的类,并包含一个主方法,主方法中调用JSONObject()方法。
1、静态方法JSONObject()中创建JSONObject对象。
调用该对象的put方法存储数据,JSON中的number数据类型在java中对应有多种类型(int、long、double),,通过输出JSONObject对象的toString()方法,这样所有的数据就会转换成字符串的类型进行输出,JSONObject会把所有生成的空格去掉,以保证数据格式的压缩,这样传输过程更高效,可以通过点击方法名选择Refactor的Rename更改所有的名称为该名的方法,当value==null时,json会自动屏蔽此value对应的key。。
查看全部 -
JSON数据演示
案例:用一个文件表示JSON的数据
案例描述:王小二同学的自我介绍,使用工具atom(开源的文本编辑器),首先一个对象{}开始,名称使用字符串类型,多个属性以逗号进行分隔,年龄使用数字类型number,可以是浮点数,没有正负数之分,JSON格式里没有日期或者时间的数据格式的,所以需要使用额外的方式替代它,常见使用字符串或者使用数字的时间戳(具体解析过程中,程序需要做具体的处理),技能需要使用数组描述[],数组中可以使用多个字符串描述,是否有女朋友的描述需要使用true或者false,车的描述通常使用对象{}进行描述这里面可以有车的描述信息,这里使用null进行描述。
注意:JSON的数据格式不支持注释,如果想使用注释可以添加描述。
查看全部 -
第一个属性:后面是内容,如果是多个属于以,作为分隔符,在json中没有注释的,但是可以吧注释写在一个属性里面"comment":"这是一个注释",查看全部
-
Gson支持注解查看全部
-
希望老师能提供jar资源和各类文件,以便学员们使用.查看全部
-
private static coid JSONObject(){ JSONObject wangxiaoer =new JSONObject(); Object nullObj=null; wangxiaoer.put("name","王二丫"); wangxiaoer.put("age",25); wangxiaoer.put("birthday","1995-99-99); wangxiaoer.put("school","南翔"); wangxiaoer.put("major",new String[]{"造飞机","打坦克"}); wangxiaoer.put("has_girlfriend",false); wangxiaoer.put("car",nullObj); wangxiaoer.put("house",nullObj); wangxiaoer.put("comment","哈哈哈"); System.out.println(wangxiaoer.toString());查看全部
-
json演示查看全部
-
今天第一天下载慕课网进行学习。学的是后段数据库的json。中的基础课程。第一天只能坚持十多分钟,开始有感觉到疲劳,似乎大脑接触到了新的知识点,有点满足也有点费脑,其实老师讲的很清楚,是一个章节一个点分开讲的,自己能拎清楚结构的前提下是不会慌乱的吧。原来自己的学习方法还是有问题的。偏向于整体打包,消化不了的地方会卡壳给自己负担吧。 自己感觉学到了第一个终点,就是json的结构。包括数列。两个结构图可以多多会议。王小二的案例也是很好的典型。 今天就先消化这个重点吧。希望自己能多多坚持,也多多优化学习方法,大脑能处理更多而不累。加油,早点休息查看全部
-
Gson 带有日期转化的功能<br> Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd").create();<br> DiaosiWithBirthday wangxiaoer = gson.from(content,DiaosiWithBirthday.class);//DiaosiWithBirthday的属性是java.util.Date的类型,content是json的具体字符串<br> system.out.println(wangxioaoer.getBirthday().toLocaleString());查看全部
举报