2015-08-22 3 views
1

У меня есть вопрос, чтобы разобрать эту JSon структуру в свои соответствующие объекты Java:Анализировать Json réponse в Java объекты с Gson

[ 
{ 
preciosArtPK: { 
       codLista: 1, 
       codArticulo: 11348, 
       cansiVenta: 1, 
       fecVigencia: 1435781252000 
       }, 
siglaVenta: "UN", 
precioVenta: 0, 
margenPct: 100, 
codUsuario: 1, 
vigente: "S", 
nomModulo: "MIGRACION" 
}, 
{ 
preciosArtPK: { 
       codLista: 1, 
       codArticulo: 15799, 
       cansiVenta: 1, 
       fecVigencia: 1435781252000 
       }, 
siglaVenta: "UN", 
precioVenta: 0, 
margenPct: 100, 
codUsuario: 1, 
vigente: "S", 
nomModulo: "MIGRACION" 
} 
] 

Я пытаюсь вставить в таблицу тех ДАННЫЕ и я использую Gson десериализовать его и ORMLite, чтобы выполнить вставку. Итак, у меня нет проблем с компонентами объекта, но внутри внутреннего объекта я не могу (preciosArtPK: codLista, codArticulo, cansiVenta, fecVigencia). Как я могу управлять подобным ответом json, чтобы упростить процедуру вставки?

После POJO для десериализации это:

private List<PreciosArtPK> preciosArtPKList; 

@DatabaseField(id = true, unique = true, columnName = PRECIOS_COD_LISTA) 
private Integer codLista; 

@DatabaseField(unique = true, columnName = PRECIOS_COD_ARTICULO) 
private Integer codArticulo; 

@DatabaseField(unique = true, columnName = PRECIOS_CANSI_VENTA) 
private Integer cansiVenta; 

@DatabaseField(unique = true, columnName = PRECIOS_FEC_VIGENCIA) 
private Long fecVigencia; 

@DatabaseField(columnName = PRECIOS_SIGLA_VENTA) 
@SerializedName("siglaVenta") 
private String siglaVenta; 

@DatabaseField(columnName = PRECIOS_PRECIO_VENTA) 
@SerializedName("precioVenta") 
private Double precioVenta; 

@DatabaseField(columnName = PRECIOS_MARGEN_PCT) 
@SerializedName("margenPct") 
private Float margenPct; 

@DatabaseField(columnName = PRECIOS_COD_USUARIO) 
@SerializedName("codUsuario") 
private Integer codUsuario; 

@DatabaseField(columnName = PRECIOS_VIGENTE) 
@SerializedName("vigente") 
private String vigente; 

@DatabaseField(columnName = PRECIOS_NOM_MODULO) 
@SerializedName("nomModulo") 
private String nomModulo; 

Любые идеи, как справиться с этим? У меня есть «null» ответ в каждом поле PK в пределах «preciosArtPK». Обозначения выше @serializeName - это материал ORMLite. Пожалуйста, если вы можете мне помочь, я буду очень благодарен! заранее спасибо.

Вежливый как обычно,

Энди

ответ

0

Ok ребят, так как у меня нет никакого ответа по поводу здесь я нахожусь в обязательстве закрыть это с решением этого вопроса, что я имел. Это очень просто в том, о просто включить экземпляр внутреннего объекта в классе, это: у меня есть preciosArt.java

public class preciosArt 
{ 

@SerializedName("preciosArtPK") 
private PreciosArtPK preciosArtPK; 

@SerializedName("siglaVenta") 
private String siglaVenta; 

@SerializedName("precioVenta") 
private Double precioVenta; 

@SerializedName("margenPct") 
private Float margenPct; 

@SerializedName("codUsuario") 
private Integer codUsuario; 

@SerializedName("vigente") 
private String vigente; 

@SerializedName("nomModulo") 
private String nomModulo; 

} 

Вещь просто включить внутренний класс объектов, и пусть gson сделать работа. Надеюсь, эта помощь, любой вопрос, я буду здесь!

Вежливый как обычно,

Энди

Смежные вопросы