标签: pojo

将pojo字段复制到另一个pojo的setter

比方说,我有一流的A公共领域xy.让我们说我有另一个pojo类,B但它使用setter和getter,所以它有setX()和setY().

我想使用一些自动方式从实例复制AB后端.

至少使用默认设置,Dozer's

   Mapper mapper = new DozerBeanMapper();
   B b = mapper.map(a, B.class);
Run Code Online (Sandbox Code Playgroud)

不会正确复制字段.

那么是否有一个简单的配置更改,允许我使用Dozer或其他库来完成上述操作?

java pojo dozer

7
推荐指数
1
解决办法
5205
查看次数

Flutter中类似android的JSON转POJO(Object)

我只是想找到一种方法将 json 响应(来自 REST API)转换为 POJO(在 android 中使用),以便我可以将接收到的数据使用到我的应用程序中,因为使用 Map 将不足以作为我的数据m 接收有点复杂,包含 3 个级别的数组(数组内的数组内的数组)。

我正在使用 Dio 库进行 api 调用,我可以成功进行 API 调用并在控制台上打印数据,完全没有问题。任何人都可以帮助我实现这一目标吗?

以下是我得到的回应。

{
"status": 200,
"message": "success",
"data": [
    {
        "menu": {
            "megamenu_id": "55",
            "language_id": "1",
            "title": "Mobiles",
            "description": "",
            "submenu": [
                {
                    "0": {
                        "info": {
                            "megamenu_id": "67",
                            "language_id": "1",
                            "title": "Mobile Phones",
                            "description": ""
                        }
                    },
                    "subsubmenu": [
                        {
                            "infosub": {
                                "megamenu_id": "68",
                                "language_id": "1",
                                "title": "Android Phones",
                                "description": ""
                            }
                        },
                        {
                            "infosub": {
                                "megamenu_id": "69",
                                "language_id": "1", …
Run Code Online (Sandbox Code Playgroud)

parsing android json pojo flutter

7
推荐指数
2
解决办法
8309
查看次数

Jackson 错误:无法从 START_ARRAY 令牌反序列化 `java.lang.String` 的实例

嘿,我也有问题,这是我的 Json

[
{
    "aimid": "12345"
},
{
    "aimid": "333674"
},
{
    "aimid": [
        "4568999",
        "6789345"
    ]
}]
Run Code Online (Sandbox Code Playgroud)

这是我的 Pojo 课:-

@JsonProperty("aimid")
private String aimid;


public String getAimid() {
    return aimid;
}

public void setAimid(String aimid) {
    this.aimid = aimid;
}
Run Code Online (Sandbox Code Playgroud)

我想将 aimid 存储在 pojo 中。当我在我的应用程序中像上面那样写时,我收到错误。

com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot deserialize instance of `java.lang.String` out of START_ARRAY token.
Run Code Online (Sandbox Code Playgroud)

根据我的理解,由于 Array 元素,我遇到了错误,所以任何人都可以建议我如何捕获这两个东西,如果它是作为字符串来的,或者它是作为一个数组字符串来的

java pojo spring-boot jackson2 jackson-databind

7
推荐指数
1
解决办法
1万
查看次数

我们应该在Jersey 2.5.1中使用jersey-media-json-jackson或jackson-jaxrs-json-provider吗?

根据jersey规范,我们可以使用jersey-media-json-jackson序列化/反序列化json/pojo,但是从StackOverflow中的某个线程,我们也可以使用jackson-jaxrs-json-provider 2.2.3

你能告诉我们应该使用哪一个?

谢谢,

serialization jersey pojo

6
推荐指数
1
解决办法
5392
查看次数

jsonschema 和日期类型

我刚刚开始使用 jsonschema 和https://github.com/joelittlejohn/jsonschema2pojo/wiki/Getting-Started 中“在 Java 项目中使用 jsonschema2pojo(嵌入式)”下的示例

考虑到此处列出的 jsonschema 数据类型 https://developers.google.com/discovery/v1/type-format?hl=en

我的架构对象可以描述为

{    
    "$schema": "http://json-schema.org/draft-04/schema",
    "description": "Document",
    "type": "object",

    "properties": {
        "displayDate": { "type": "date" },
        "displayName": { "type": "string" }
    }
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,生成的 Pojo 对象将是

package com.example;

public interface Document {

   java.lang.Object getDisplayDate();

   void setDisplayDate(java.lang.Object arg0);

   java.lang.String getDisplayName();

   void setDisplayName(java.lang.String arg0);

}
Run Code Online (Sandbox Code Playgroud)

有一个对象类型的成员“displayDate”,而不是预期的日期。为什么?

java json pojo jsonschema

6
推荐指数
1
解决办法
6071
查看次数

将 POJO 转换为 XML

我必须发出一个 SOAP POST 请求,如下所示

POST /sample/demo.asmx HTTP/1.1
Host: www.website.org
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://www.website.org/Method"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <Method xmlns="https://www.ourvmc.org/">
      <item1>string</item1>
      <item2>string</item2>
      <item3>string</item3>
      <item4>string</item4>
    </Method>
  </soap:Body>
</soap:Envelope>
Run Code Online (Sandbox Code Playgroud)

我已经达到

POST /sample/demo.asmx HTTP/1.1
Host: www.website.org
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://www.website.org/Method"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<Method xmlns="http://tempuri.org/"/>
</soap:Body>
</soap:Envelope>
Run Code Online (Sandbox Code Playgroud)

我有一个名为 Method 和 getter setter 的 POJO 类,用于所有 item1、item2、item3、item4。我需要将该 POJO 转换为 xml 格式

<item1>string</item1>
  <item2>string</item2>
  <item3>string</item3>
  <item4>string</item4>
Run Code Online (Sandbox Code Playgroud)

然后发布它。任何人都可以建议怎么做吗?我已经研究过,但没有找到任何有用的解决方案。

java xml android soap pojo

6
推荐指数
1
解决办法
1万
查看次数

我是否需要在使用 GSON(序列化/反序列化库)时为模型类实现 Serializable

我使用默认的 HttpUrlConnection 类进行 api 调用,使用GSON将 Java 对象转换为 json 请求,将 json 响应转换为等效的 Java 对象。我创建了各种模型(pojo 类)来将请求/响应转换为模型对象。我的疑问是由于 GSON 是序列化/反序列化库,因此对所有这些模型实现 Serializable 是否理想?

public class Contact implements Serializable {
    private String name;
    private String email;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }
}
Run Code Online (Sandbox Code Playgroud)

我从所有模型中删除了可序列化的工具,一切似乎都运行良好。但我很困惑它是否正确?

serialization android model pojo gson

6
推荐指数
1
解决办法
3679
查看次数

在 Gson 反序列化器旁边使用 Room 持久性库中的 @Embedded

我使用 Google Room 持久性库将数据保存在数据库中。在 Room 中有一个注释(@Embedded):

您可以使用 @Embedded 注释来表示您想要分解为其在表中的子字段的对象。然后,您可以像查询其他单独列一样查询嵌入字段

@Entity
public class MyObject {

// nested class
public class GeneralInfo {

    public String ownerName;

    @PrimaryKey
    public long wellId;
}

@Embedded
public GeneralInfo generalInfo;

public long objectId;

// other fields
}
Run Code Online (Sandbox Code Playgroud)

我使用 Gson 从 REST API 反序列化 json 字符串,我希望 Gson 直接将GeneralInfo字段反序列化为MyObject字段。我怎样才能做到这一点?

我希望 GsonMyObject像这样反序列化 s:

{
    objectId : 1
    wellId : 1
    ownerName : "Me"
}
Run Code Online (Sandbox Code Playgroud)

不是这个

{
    generalInfo : {        
        wellId : 1
        ownerName …
Run Code Online (Sandbox Code Playgroud)

java json pojo gson android-room

6
推荐指数
1
解决办法
593
查看次数

GraphQL Java类生成器

我想使用Java来学习graphQL。我想查询现有的graphQL服务。到目前为止,我发现从POJO类以JSON或IDL形式生成graphQL schemafile的方法,但反过来又不是。根据到目前为止的理解,我必须自己创建Java类,以“表示”我将从查询中接收到的对象。但是我要使用的服务有大量的端点和查询,我自己编写每个pojo类的需求听起来好像我错过了一些东西...我认为必须有一种方法可以像从REST API框架中生成我习惯的存根一样使用招摇或yaml文件?所以... 如何仅给定schemafile自动生成pojo类?我已经在graphql-java中阅读了关于模式优先方法的描述,但他们还假设自己编写pojo类。

谢谢

java client pojo graphql

6
推荐指数
1
解决办法
1584
查看次数

在JSON响应中为字段选择数据类型

我正在研究一个Java项目,该项目使用Jackson库解析从外部API接收到的JSON响应。响应中的字段之一有时作为单个对象出现,在某些情况下,它作为对象数组出现。因此,我不确定应该选择哪种数据类型将此响应映射回Java对象。如何将两种响应类型正确映射到Java对象?

在上述可能的重复项中,响应始终是一个列表,但在我看来,它不是。所以我不认为它是上述问题的重复。

以下是我收到的回复:

"configuration": {
    "additionalServices": {
       "type": "Standard DDOS IP Protection"
    },
}
Run Code Online (Sandbox Code Playgroud)

有时这就是我收到相同回复的方式:

"configuration": {
    "additionalServices": [
        {
            "type": "Standard DDOS IP Protection"
        },
        {
            "type": "Remote Management"
        }
    ],
}
Run Code Online (Sandbox Code Playgroud)

这是我的Java映射现在的样子:

"configuration": {
    "additionalServices": {
       "type": "Standard DDOS IP Protection"
    },
}
Run Code Online (Sandbox Code Playgroud)
"configuration": {
    "additionalServices": [
        {
            "type": "Standard DDOS IP Protection"
        },
        {
            "type": "Remote Management"
        }
    ],
}
Run Code Online (Sandbox Code Playgroud)

如果我使用以下声明,则它将仅解析数组输出,并为第一个响应抛出异常:

@JsonIgrnoreProperties(ignoreUnknown = true)
public class Configuration {
    private List<AdditionalServices> additionalServices;
}
Run Code Online (Sandbox Code Playgroud)

如果我使用以下声明,则它将仅解析第一个响应,并为第二个响应引发异常:

@JsonIgrnoreProperties(ignoreUnknown = true)
public …
Run Code Online (Sandbox Code Playgroud)

java json pojo jackson jackson-databind

6
推荐指数
1
解决办法
79
查看次数