json框架java,JSON结构

本文目录一览:

java解析json格式文件,再保存在数据库怎么做?

java解析json格式文件,再保存在数据库的方法:

1:定义一个实体类

2:用json lib将json字符串转为Java对象

3:用jdbc或hibernate将java对象存入数据库

直接读写文件,再把读出来的文件内容格式化成json,再用JDBC、Mybatis或者其他框架将json数据存入数据库。

假设实体类是这样的:

public class ElectSet {

public String xueqi;

public String xuenian;

public String startTime;

public String endTime;

public int menshu;

public String isReadDB;

//{“xueqi”:,”xuenian”:,”startTime”:,”endTime”:,”renshu”:,”isReadDB”:}

public String getXueqi() {

   return xueqi;

}

public void setXueqi(String xueqi) {

   this.xueqi = xueqi;

}

public String getXuenian() {

   return xuenian;

}

public void setXuenian(String xuenian) {

   this.xuenian = xuenian;

}

public String getStartTime() {

   return startTime;

}

public void setStartTime(String startTime) {

   this.startTime = startTime;

}

public String getEndTime() {

   return endTime;

}

public void setEndTime(String endTime) {

   this.endTime = endTime;

}

public int getMenshu() {

   return menshu;

}

public void setMenshu(int menshu) {

   this.menshu = menshu;

}

public String getIsReadDB() {

   return isReadDB;

}

public void setIsReadDB(String isReadDB) {

   this.isReadDB = isReadDB;

}

 

}

有一个json格式的文件,存的信息如下:

Sets.json:

{“xuenian”:”2007-2008″,”xueqi”:”1″,”startTime”:”2009-07-19 08:30″,”endTime”:”2009-07-22 18:00″,”menshu”:”10″,”isReadDB”:”Y”}

具体操作:

/*

* 取出文件内容,填充对象

*/

public ElectSet findElectSet(String path){

   ElectSet electset=new ElectSet();

   String sets=ReadFile(path);//获得json文件的内容

   JSONObject jo=JSONObject.fromObject(sets);//格式化成json对象

   //System.out.println(“————” jo);

   //String name = jo.getString(“xuenian”);

   //System.out.println(name);

   electset.setXueqi(jo.getString(“xueqi”));

   electset.setXuenian(jo.getString(“xuenian”));

   electset.setStartTime(jo.getString(“startTime”));

   electset.setEndTime(jo.getString(“endTime”));

   electset.setMenshu(jo.getInt(“menshu”));

   electset.setIsReadDB(jo.getString(“isReadDB”));

   return electset;

}

//设置属性,并保存

public boolean setElect(String path,String sets){

   try {

    writeFile(path,sets);

    return true;

   } catch (IOException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    return false;

   }

}

//读文件,返回字符串

public String ReadFile(String path){

    File file = new File(path);

    BufferedReader reader = null;

    String laststr = “”;

    try {

     //System.out.println(“以行为单位读取文件内容,一次读一整行:”);

     reader = new BufferedReader(new FileReader(file));

     String tempString = null;

     int line = 1;

     //一次读入一行,直到读入null为文件结束

     while ((tempString = reader.readLine()) != null) {

      //显示行号

      System.out.println(“line ” line “: ” tempString);

      laststr = laststr tempString;

      line ;

     }

     reader.close();

    } catch (IOException e) {

     e.printStackTrace();

    } finally {

     if (reader != null) {

      try {

       reader.close();

      } catch (IOException e1) {

      }

     }

    }

    return laststr;

}

将获取到的字符串,入库即可。

java使用json需要哪些jar包

JsonObject Gson两大开源框架非常简单一行代码实现json与java相互转换

String json = new Gson().toJson(object);

java开发,json是干什么的

json其实就是封装了一种数据格式,它使用了自己定义的标准。主要用来在服务器和客户端的浏览器进行数据交换。因为我们常用的表单形式提交数据,有诸多的不便,json解决了一些问题。学习Java开发推荐千锋教育,千锋教育利用技术优势精心打造了AI教辅系统,依托技术领域热门的人工智能技术,科技辅学,有力护航学员成长。

java开发前景好,很多软件的开发都离不开Java,因此其程序员的数量最多。据官方数据统计,在全球编程语言工程师的数量上,Java语言以900万的程序员数量位居首位。Java在我们的生活中无处不在。只要我们能接触到互联网,我们就不能没有Java。目前,世界上有数十亿设备正在运行Java。从互联网电子商务到金融行业的服务器应用,从APP到企事业单位的OA系统,从大数据到桌面应用等,Java广泛应用于各个领域。

想要了解更多关于java开发的相关信息,推荐咨询千锋教育。千锋企合作部整合大量企业客户资源,紧抓当下企业需求,将技术和项目完美结合千锋课程体系,力求培养更多优质人才服务企业,不断提升学员竞争力,链接企业用人标准的培训课程及实战项目,让企业招聘用人的技术要求与千锋学员的技术充分对接。近年来不断引进阿里钉钉小程序技术、红帽认证、腾讯云、亚马逊等,通过与企业的深度融合实现千锋教研和就业服务的迭代升级,专业性值得信赖。

在 java web开发中怎么使用json?

一、JSON建构有两种结构:

json简单说就是javascript中的对象和数组,所以这两种结构就是对象和数组2种结构,通过这两种结构可以表示各种复杂的结构

1、对象:对象在js中表示为“{}”括起来的内容,数据结构为 {key:value,key:value,…}的键值对的结构,在面向对象的语言中,key为对象的属性,value为对应的属性值,所以很容易理解,取值方法为 对象.key 获取属性值,这个属性值的类型可以是 数字、字符串、数组、对象几种。在Java中就是一种Map结构。

2、数组:数组在js中是中括号“[]”扩起来的内容,数据结构为 [“java”,”javascript”,”vb”,…],取值方式和所有语言中一样,使用索引获取,字段值的类型可以是 数字、字符串、数组、对象几种。在Java中是一种list结构。

经过对象、数组2种结构就可以组合成复杂的数据结构了。

二、Json in Javascript

使用Json语法创建对象

var people = {“name”:”jack”,”sex”:”mail”};

可以通过这种语法创建json对象,用“{}”括起来,用“,”隔开key:value

使用Json语法创建数组

var arr =[value1,value2…];

一个包含多个people的数组 peoples = [{“name”:”jack”,”sex”:”mail”},

“name”:”lily”,”sex”:”femail”};

Json数组可以通过这种语法创建,用”[]”括起来,数组元素之间用“,”分隔开,下面是这种语法的示意图:

在使用Json格式字符串与服务器交互时候,可以利用Json扩展的方法将字符串转换成一个JavaScript对象,或者将一个对象转换成Json格式字符串。不过先要登录下载Json2.js文件。引入该包后,js对象直接用toJSONString()装换为字符串格式,字符串可以用parseJSON()转换成js对象。

访问数据

只需用点号表示法来表示数组元素。所以,要想访问 上面peoples列表的第一个条目的名字,只需在 JavaScript 中使用下面这样的代码:

peoples[0].name

利用这样的语法,可以处理任何 JSON 格式的数据,而不需要使用任何额外的 JavaScript 工具包或 API。

修改数据

正如可以用点号和方括号访问数据,也可以按照同样的方式轻松地修改数据:

peoples[0].name = “Rachmaninov”;

在将字符串转换为 JavaScript 对象之后,就可以像这样修改变量中的数据。

java怎么使用gson解析json字符串

Gson是谷歌推出的解析json数据以及将对象转换成json数据的一个开源框架. 现在json因其易读性和高效率而被广泛的使用着.

相对于java以及其它json的解析框架,Gson非常的好用.

简单来讲就是根据json的数据结构定义出相应的javabean —“new”出Gson的实例gson—-gson.fromJson(jsonString,JavaBean.class) 即可.

下面给出一个实例来说明.

步骤1:目标:将从webservice传回的json

{

    “status”: 0,

    “result”: {

        “location”: {

            “lng”: 103.98964143811,

            “lat”: 30.586643130352

        },

        “formatted_address”: “四川省成都市双流县北一街154”,

        “business”: “簇桥,金花桥”,

        “addressComponent”: {

            “city”: “成都市”,

            “district”: “双流县”,

            “province”: “四川省”,

            “street”: “北一街”,

            “street_number”: “154”

        },

        “cityCode”: 75

    }

}

先普及下json数据格式定义: json数据只有两种格式.

一种是对象: 一个大括号包裹的内容就是一个对象.里面是无数个逗号相间隔的键值对

{ “firstName”: “Brett”, “lastName”:”McLaughlin”, “email”: “aaaa” }

一种是数组:一个方括号包裹的内容就是一个数组,里面是无数个逗号相间隔的json对象

如:

{

    “people”: [

        {

            “firstName”: “Brett”,

            “lastName”: “McLaughlin”,

            “email”: “aaaa”

        },

        {

            “firstName”: “Jason”,

            “lastName”: “Hunter”,

            “email”: “bbbb”

        },

        {

            “firstName”: “Elliotte”,

            “lastName”: “Harold”,

            “email”: “cccc”

        }

    ]

}

步骤2 定义json数据格式对应的javaBean

public class Result {

private Integerstatus;

private ResultDetailresult;

public Result() {

}

public Result(Integer status, ResultDetail result) {

super();

this.status = status;

this.result = result;

}

public ResultDetail getResult() {

return this.result;

}

public Integer getStatus() {

return this.status;

}

public void setResult( ResultDetail result ) {

this.result = result;

}

public void setStatus( Integer status ) {

this.status = status;

}

@Override

public String toString() {

return “Result [status=” + this.status + “, result=” + this.result

+ “]”;

}

}

public class ResultDetail {

Locationlocation;

Stringformatted_address;

AddressComponentaddressComponent;

Stringbusiness;

StringcityCode;

public ResultDetail() {

super();

// TODO Auto-generated constructor stub

}

public ResultDetail(Location location, String formatted_address,

AddressComponent addressComponent, String business, String cityCode) {

super();

this.location = location;

this.formatted_address = formatted_address;

this.addressComponent = addressComponent;

this.business = business;

this.cityCode = cityCode;

}

public AddressComponent getAddressComponent() {

return this.addressComponent;

}

public String getBusiness() {

return this.business;

}

public String getCityCode() {

return this.cityCode;

}

public String getFormatted_address() {

return this.formatted_address;

}

public Location getLocation() {

return this.location;

}

public void setAddressComponent( AddressComponent addressComponent ) {

this.addressComponent = addressComponent;

}

public void setBusiness( String business ) {

this.business = business;

}

public void setCityCode( String cityCode ) {

this.cityCode = cityCode;

}

public void setFormatted_address( String formatted_address ) {

this.formatted_address = formatted_address;

}

public void setLocation( Location location ) {

this.location = location;

}

}

public class Location {

Stringlng;

Stringlat;

public Location() {

}

public Location(String lng, String lat) {

this.lng = lng;

this.lat = lat;

}

public String getLat() {

return this.lat;

}

public String getLng() {

return this.lng;

}

public void setLat( String lat ) {

this.lat = lat;

}

public void setLng( String lng ) {

this.lng = lng;

}

@Override

public String toString() {

return “Location [lng=” + this.lng + “, lat=” + this.lat + “]”;

}

}

public class AddressComponent {

Stringcity;

Stringdistrict;

Stringprovince;

Stringstreet;

Stringstreet_number;

public AddressComponent() {

super();

// TODO Auto-generated constructor stub

}

public AddressComponent(String city, String district, String province,

String street, String street_number) {

super();

this.city = city;

this.district = district;

this.province = province;

this.street = street;

this.street_number = street_number;

}

public String getCity() {

return this.city;

}

public String getDistrict() {

return this.district;

}

public String getProvince() {

return this.province;

}

public String getStreet() {

return this.street;

}

public String getStreet_number() {

return this.street_number;

}

public void setCity( String city ) {

this.city = city;

}

public void setDistrict( String district ) {

this.district = district;

}

public void setProvince( String province ) {

this.province = province;

}

public void setStreet( String street ) {

this.street = street;

}

public void setStreet_number( String street_number ) {

this.street_number = street_number;

}

@Override

public String toString() {

return “AddressComponent [city=” + this.city + “, district=”

+ this.district + “, province=” + this.province + “, street=”

+ this.street + “, street_number=” + this.street_number + “]”;

}

}

测试:

jsonString ( 目标json数据,已经在最上面写好的)

System.out.println( “jsonString:” + jsonString );

Gson gson = new Gson();

Result fromJson = gson.fromJson( jsonString.toString() ,Result.class );

System.out.println( “******************************************” );

System.out.println( fromJson );

结果:

jsonString:{“status”:0,”result”:{“location”:{“lng”:103.98964143811,”lat”:30.586643130352},”formatted_address”:”四川省成都市双流县北一街154″,”business”:”簇桥,金花桥”,”addressComponent”:{“city”:”成都市”,”district”:”双流县”,”province”:”四川省”,”street”:”北一街”,”street_number”:”154″},”cityCode”:75}}

*******************************************

Result [status=0, result=ResultDetail [location=Location [lng=103.98964143811, lat=30.586643130352], formatted_address=四川省成都市双流县北一街154, addressComponent=AddressComponent [city=成都市, district=双流县, province=四川省, street=北一街, street_number=154], business=簇桥,金花桥, cityCode=75]]

可见,jsonString已经成功的被转换成了对应的javaBean

步骤3 : 总结.说明

Gson可以很轻松的实现javaBean和jsonString之间的互转.只需要明白json如何定义.剩下的就非常简单了.

一个java对象内包含一个对象集合 用json-lib框架怎么转换成JSON数据格式

List list = new ArraryList();

list.add(employee); //添加类employee

list.add(employer); //添加类employer

jsonArray = JSONArray.fromObject(list); //转换为json数组

这样就行了

原创文章,作者:AXHA,如若转载,请注明出处:https://www.506064.com/n/137646.html

(0)
AXHAAXHA
上一篇 2024-10-04
下一篇 2024-10-04

相关推荐

发表回复

登录后才能评论