java对象转json字符串方法_java json字符串转对象

java对象转json字符串方法_java json字符串转对象当学习如何编写基于Java的软件时,开发人员遇到的第一个障碍就是如何将其代码与其他软件连接。这通常是JSON的来源。尽管您可能是Java向导,但JSON是另一种动物。无论如何,这篇博客文章解释了完成工作所需的一切。Java对象是数据和处理可用数据的过程的组合。对象既有状态又有行为。在Java中,使用关键字“new”创建对象。对象是从称为类的模板创建的。…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

当学习如何编写基于Java的软件时,开发人员遇到的第一个障碍就是如何将其代码与其他软件连接。 这通常是JSON的来源。尽管您可能是Java向导,但JSON是另一种动物。 无论如何,这篇博客文章解释了完成工作所需的一切。

Java对象是数据和处理可用数据的过程的组合

java对象转json字符串方法_java json字符串转对象

对象既有状态又有行为 。 在Java中,使用关键字“ new”创建对象。

对象是从称为类的模板创建的。

对象是类的实例。

例如,我们的“ 猫对象 ”有: 美国 -颜色,名称,品种
对象的状态存储在字段(变量)中。 行为 –呼pur,进食,睡觉的方法(功能)显示对象的行为。

  • JSONJavaScript Object Notation的首字母缩写。
  • JSON格式   被设计为数据交换格式,并且语法是JavaScript的子集。
  • 从文本文件等加载的引号(单引号或双引号)包围的上下文称为JSON字符串。
    例如
    {“ id”:1,“ name”:“ SiAm”,“ color”:“ Cream”,“ eyecolor”:“ Blue”,“ breed”:“ Siamese”}
  • JSON是可互操作的,这意味着它与语言/平台无关。
  • JSON格式用于通过网络连接序列化和传输结构化数据。 它主要用于在服务器和移动/ Web应用程序之间传输数据,是XML的替代方法。

下面的示例演示了一个客户端服务器场景,其中RESTful Web服务接受XML / JSON格式的数据。

  • RESTful Web服务器应用程序是使用Java设计的:
  • 最终用户不了解xml / json,但这不是问题
  • 最终用户与可能是android的移动应用进行通信
  • 最终用户与可能是php的移动应用进行通信
  • 移动/ Web应用程序通过XML / JSON与RESTful Web服务进行通信
java对象转json字符串方法_java json字符串转对象

在上面的示例图中,我们的RESTful Web服务是使用Java设计的。

java对象转json字符串方法_java json字符串转对象

由于Java对象只能由Java应用程序理解,因此在为Android应用程序创建Web服务时,需要将Java对象转换为JSON。 假设移动应用是一个混合应用,其中前端由android视图处理,数据交易通过自己的网络服务使用JSON发送。 在这种情况下,我们需要使用Web服务/ api和JSON数据结构从android应用向数据库发送/从数据库接收请求。

  • JSON是简单的字符串格式数据。 JSON是可读格式 。 从中读取和推断信息非常容易。
  • JSON格式易于使用。
  • 与XML等其他格式相比,JSON 的重量
  • JSON 格式可以轻松地以面向对象的方式转换为Java对象
  • JSON是可互操作的:程序和平台无关。

如何将Java对象转换为JSON字符串的分步示例

将Java Object转换为JSON字符串的最常见方法是使用API 。 为此目的最常用的API是Jackson和GSON。

本示例说明如何使用JACKSON API将Java对象转换为JSON字符串。

我们可以使用Jackson API提供的ObjectMapper类进行转换。

  • writeValueAsString()用于将Java obj转换为JSON
  • readValue()用于将JSON转换为Java obj

步骤1:

使用MAVEN进行依赖关系管理(推荐)时,可以包括以下依赖关系来下载JAR文件,JACKSON的任何依赖关系,并自动将其包括在项目的类路径中。

将以下依赖项添加到pom文件:

 <dependencies>  <dependency> 
         <groupId>com.fasterxml.jackson.core</groupId> 
         <artifactId>jackson-databind</artifactId> 
         <version> 2.9 . 8 </version>  </dependency>  </dependencies> 

步骤2:

 ObjectMapper mapper = new ObjectMapper();  try { 
   String json = mapper.writeValueAsString(cat); 
   System.out.println( "ResultingJSONstring = " + json); 
   //System.out.println(json);  } catch (JsonProcessingException e) { 
    e.printStackTrace();  } 

本示例使用以下代码:

类useJACKSONapiToConvertJavaOBJtoJSONstring

 import com.fasterxml.jackson.core.JsonProcessingException; 
  import com.fasterxml.jackson.databind.ObjectMapper; 
  public class useJACKSONapiToConvertJavaOBJtoJSONstring { 
      public static void main(String[] args) { 
          Cat cat = new Cat(); 
          cat.setId(1L); 
          cat.setName( "SiAm" ); 
          cat.setColor( "Cream" ); 
          cat.setEyecolor( "Blue" ); 
          cat.setBreed( "Siamese" ); 
          ObjectMapper mapper = new ObjectMapper(); 
          try { 
              String json = mapper.writeValueAsString(cat); 
              System.out.println( "ResultingJSONstring = " + json); 
              //System.out.println(json); 
          } catch (JsonProcessingException e) { 
              e.printStackTrace(); 
  } 
  Cat class 
 public class Cat { 
      private Long id; 
      private String name; 
      private String color; 
      private String eyecolor; 
      private String breed; 
      public Cat() { 
      public Cat(Long id, String name) { 
          this .id = id; 
          this .name = name; 
      // Getters & Setters 
      @Override 
      public String toString() { 
          return "Cat{" + 
              "id=" + id + 
              ", name='" + name + 
              '\'' + 
              '}' ; 
  public Long getId() { return id; } id; } 
  public void setId(Long id) { this .id = id; } .id = id; } 
  public String getName() { return name; } name; } 
  public void setName(String name) { this .name = name; } .name = name; } 
  public String getColor() { return color; } color; } 
  public void setColor(String color) { this .color = color; } .color = color; } 
  public String getEyecolor() { return eyecolor; 
  public void setEyecolor(String eyecolor) { this .eyecolor = eyecolor; } .eyecolor = eyecolor; } 
  public String getBreed() { return breed; } breed; } 
  public void setBreed(String breed) { this .breed = breed; } .breed = breed; } 
  } 

步骤3:运行useJACKSONapitoConvertJavaOBJtoJSONstring

 ResultingJSONstring = { "id" : 1 , "name" : "SiAm" , "color" : "Cream" , "eyecolor" : "Blue" , "breed" : "Siamese" } 

使用 com.google.gson 查找 Java 代码段 的最佳示例

下面的示例演示如何使用GSON API将Java对象转换为JSON字符串。

步骤1:

使用MAVEN进行依赖关系管理(推荐)时,可以包括以下依赖关系来下载JAR文件,GSON的任何依赖关系,并自动包括在项目的类路径中,如下所示:

将以下依赖项添加到pom文件:

 <dependencies>  <dependency> 
  <groupId>com.google.code.gson</groupId> 
      <artifactId>gson</artifactId> 
      <version> 2.3 . 1 </version> 
  </dependency>  </dependencies> 

步骤2:

使用以下命令调用GSON API:Gson gson = new Gson();

本示例使用以下代码:

类UseGSONapitoConvertJavaOBJtoJASONstring

 import com.google.gson.Gson;  public class UseGSONapitoConvertJavaOBJtoJASONstring{ 
   public static void main(String args[]) { 
    CatDetails user = new CatDetails( "SiAm" , 
              "Siamese" , 
             "siam.cat@gmail.com" , 
              9 , 
              2129991234L, 
              "NewCatadonia" , 
              true ); 
     Gson gson = new Gson(); 
     String json = gson.toJson(user); 
     System.out.println(json);  } 

类CatDetails

 /** 
  * Java Program to map a Java object to JSON String using GSON library. 
  */  class CatDetails { 
   private String name; 
   private String breed; 
   private String email; 
   private int catlives; 
   private long phone; 
   private String city; 
   private boolean likesMice;  
   public CatDetails(String name, String breed, String email, int catlives, long phone, 
       String city, boolean likesMice) { 
     super (); 
     this .name = name; 
     this .email = email; 
     this .catlives = catlives; 
     this .phone = phone; 
     this .city = city; 
     this .likesMice = likesMice; 
     this .breed = breed;  //getters & setters  public String getName() { 
     return name;  }  public void setName(String name) { 
     this .name = name;  }  public String getBreed() { 
     return breed;  }  public void setBreed(String breed) { 
     this .breed = breed;  }  public String getEmail() { 
     return email;  }  public void setEmail(String email) { 
     this .email = email;  }  public int getCatlives() { 
     return catlives;  }  public void setCatlives( int catlives) { 
     this .catlives = catlives;  }  public long getPhone() { 
     return phone;  }  public void setPhone( long phone) { 
     this .phone = phone;  }  public String getCity() { 
     return city;  }   public void setCity(String city) { 
     this .city = city;  }  public boolean isLikesMice() { 
     return likesMice;  }  public void setLikesMice( boolean likesMice) { 
     this .likesMice = likesMice;  }  } 

结果:

步骤3: 运行UseGSONapitoConvertJavaOBJtoJASONstring

 { "name" : "SiAm" , "breed" : "Siamese" , "email" : "siam.cat@gmail.com" , "catlives" : 9 , "phone" : 2129991234 , "city" : "NewCatadonia" , "likesMice" : true } 

使用JACKSON或GSON API,将Java Obj转换为JSON字符串很简单。

在我们的示例中,我们提供了使您可以轻松在IDE中重现的代码。

您需要做的只是:

  1. 创建一个新项目(建议使用Maven)
  2. 通过将依赖项添加到pom文件中,将 JAR文件包括 到您的类路径中。
  3. 建立课程
  4. 使用JACKSON API: ObjectMapper映射器类
    通过传递要转换为JSON的对象来调用writeValueAsString(ObjToConvert)方法
    要么
    使用GSON API: Gson类
      通过将要转换为JSON的对象传递给toJson(ObjToConvert)方法;

运行以将Java Obj转换为JSON字符串。

java对象转json字符串方法_java json字符串转对象

翻译自: https://www.javacodegeeks.com/2019/08/how-to-convert-a-java-object-into-a-json-string.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/191157.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • HSQL入门_js 数据库

    HSQL入门_js 数据库HSQLDBHibernateSQLServerJDBCWeb 一、简介: hsql数据库是一款纯Java编写的免费数据库,许可是BSD-style的协议。 相对其他数据库来说,其体积小,才563kb。 仅一个hsqldb.jar文件就包括了数据库引擎,数据库驱动,还有其他用户界面操作等内容。 下载地址:http://hsqldb.org/二、使用hs

    2022年9月22日
    4
  • 木马免杀原理

    木马免杀原理##木马免杀原理###一、实验目的1.了解杀毒软件特征码查杀病毒的基本原理2.掌握木马特征码免杀的原理和方法###二、实验环境1.系统环境:Windows环境,XP环境2.软件工具:灰鸽

    2022年7月4日
    27
  • offes破解2022激活码(注册激活)「建议收藏」

    (offes破解2022激活码)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

    2022年4月1日
    91
  • redis如何查看版本号_redis版本号

    redis如何查看版本号_redis版本号linux环境下查看redis的版本:查看redis的版本有两种方式:1.redis-server–version和redis-server-v 得到的结果是:Redisserverv=3.2.12sha=00000000:0malloc=jemalloc-3.6.0bits=641.redis-cli–version和redis-cli-…

    2022年10月19日
    6
  • android hybrid框架_基于android的app开发

    android hybrid框架_基于android的app开发转载请标明出处:一片枫叶的专栏本文将介绍Android中hybrid开发相关的知识点。hybrid开发实际上是混合开发的意思,这里的混合是H5开发与Native开发混合的意思。下面的文章中我们将逐个介绍一下hybrid开发的概念、hybrid开发的优势、Android中如何实现hybrid开发、简单的hybrid开发的例子,以及在产品实践中对hybrid开发的应用,希望通过本篇文章的介绍让您能够对A

    2022年9月22日
    4
  • 二叉树层序遍历Java实现「建议收藏」

    二叉树层序遍历Java实现「建议收藏」publicclassNode{privateintvalue;privateNodelchild;privateNoderchild;publicintgetValue(){returnvalue;}publicvoidsetValue(intvalue){this.value=value;}

    2022年5月11日
    34

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号