如何在Eclipse中将Java对象转换为JSON对象

如何在Eclipse中将Java对象转换为JSON对象,java,json,eclipse,Java,Json,Eclipse,我的要求是将普通Java对象转换为JSON格式- Record Id: 168349200 Name: jane City: abababa State: ababab Insertion Date: 18/04/2017 10:16:17 Java对象具有以下格式- Record Id: 168349200 Name: jane City: abababa State: ababab Insertion Date: 18/04/2017 10:16:17 我

我的要求是将普通Java对象转换为JSON格式-

Record Id: 168349200
 Name:  jane
 City:  abababa
 State:  ababab
 Insertion Date:  18/04/2017 10:16:17
Java对象具有以下格式-

Record Id: 168349200
 Name:  jane
 City:  abababa
 State:  ababab
 Insertion Date:  18/04/2017 10:16:17
我阅读了一些教程,发现GSON库是一种实现这一点的方法。我尝试在我的Eclipse项目中安装gson jar(使用EclipseMars版本(4.5.0))

但当我这么做的时候-

import com.google.gson.Gson
在我想要将Java对象转换为JSON的类中,它抛出了一个异常

我想我没有正确添加gsonjar文件

能找个人帮忙吗

谢谢。

试试:

    Gson gson = new Gson();
    String jsonString = null;
    try {
        jsonString = gson.toJson(javaObject);
    } catch (Exception e) {
        e.printStackTrace();
    }

使用ObjectMapper从Java对象到Json:

ObjectMapper objMapper = new ObjectMapper().setSerializationInclusion(Include.NON_NULL);

MyObject mObject = new MyObject();

String jsonObject ="";


mObject.setField1(value1);
mObject.setField2(value2);
mObject.setField3(value3);

try {
            jsonObject = objMapper.writeValueAsString(mObject);
            System.out.println(jsonObject); //You can then store it in a file

     } catch (JsonProcessingException e) {

            e.printStackTrace();
     }
您应该添加以下导入:

import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
在pom.xml中,这些行:

<dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>2.7.5</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-annotations</artifactId>
            <version>2.7.5</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.7.5</version>
        </dependency>

com.fasterxml.jackson.core
杰克逊核心
2.7.5
com.fasterxml.jackson.core
杰克逊注释
2.7.5
com.fasterxml.jackson.core
杰克逊数据绑定
2.7.5

No,如果它确实抛出运行时异常,则表示您正确添加了JAR。缺少JAR更可能导致编译时错误。错误是什么?剪切并粘贴您看到的语言。您需要使用GSON yes还是yes??我已经用ObjectMapper解决了这个问题。如果您对ObjectMapper方法感兴趣,请告诉我,我将与您分享一些scripts@duffymoIt是一个编译时错误,上面写着“导入com.google无法解析”@IgnacioAlorre不,我不需要使用GSON。我的需求是将Java对象转换为JSON,以便RESTAPI可以使用它。是的,请告诉我ObjectMapper方法。我是新来的,所以任何能快速完成工作的都可以。谢谢如果要将jar文件导入eclipse项目,请将jar文件复制到eclipse源文件夹中,右键单击jar文件,选择build path->add to build path。我不能使用“import com.google.gson.gson”给我的编译时间error@bably在更新版本的Eclipse-Neon.3中导入这个库并没有任何问题。我对JavaEE非常陌生。在EclipseMars版本(4.5.0)中,我创建了一个简单的Java项目,其中没有看到pom.xml文件。要获取pom.xml文件,我需要在Eclipse中创建什么类型的项目?谢谢。如果你创建了一个Java项目,你可以像这样把它转换成Maven:右键点击项目名称->配置->转换成Maven。但是,您可能需要在Eclipse中安装Maven插件,并在计算机中存储一些依赖项。在这里的评论中,这个主题非常复杂,因此我建议您寻找一些关于如何创建简单Maven项目的教程。然后你尝试解决方案。顺便说一句,如果你开始学习Maven,你可能会觉得学习Maven是浪费时间,简单的项目不需要它,但相信我,作为一名开发人员,它会让你的生活变得轻松,越快习惯它越好-谢谢,事实上,我需要在7天内完成项目,所以在不久的将来,我将不得不研究Maven。谢谢你的建议。