タグ付けされた質問 「jackson」

ジャクソンは、読み取りと書き込み(解析/生成)やJavaオブジェクトとのデータバインディングなどのタスクを処理するためのJavaライブラリです。Jacksonは主にJSONに使用されますが、Avro、CBOR、CSV、Javaプロパティ、Protobuf、Smile、XML、YAMLなど、他の多くのデータ形式もサポートしています。


10
Jackson JSONを使用してJSON文字列をMap <String、String>に変換する方法
私はこのようなことをやろうとしていますが、うまくいきません: Map&lt;String, String&gt; propertyMap = new HashMap&lt;String, String&gt;(); propertyMap = JacksonUtils.fromJSON(properties, Map.class); しかしIDEは言う: 未チェックの割り当て Map to Map&lt;String,String&gt; これを行う正しい方法は何ですか?私はジャクソンのみを使用しています。それはプロジェクトですでに利用可能なものだからです。JSONとの間で変換するネイティブJavaの方法はありますか? PHPでは、単純にjson_decode($str)配列を取得します。基本的に同じものがここに必要です。
185 java  jackson 

9
@JsonPropertyプロパティはいつ使用され、何に使用されますか?
このBeanの「状態」: public class State { private boolean isSet; @JsonProperty("isSet") public boolean isSet() { return isSet; } @JsonProperty("isSet") public void setSet(boolean isSet) { this.isSet = isSet; } } ajax 'success'コールバックを使用してネットワーク経由で送信されます: success : function(response) { if(response.State.isSet){ alert('success called successfully) } ここで@JsonPropertyアノテーションが必要ですか?それを使用する利点は何ですか?副作用を引き起こさずにこのアノテーションを削除できると思います。 https://github.com/FasterXML/jackson-annotations/wiki/Jackson-Annotationsでこの注釈について読んでいますこれをいつ使用する必要があるかわかりませんか?
183 java  ajax  jackson 

4
ジャクソンを使用してJSONのフィールド名を変更する方法
私はjacksonを使用して、私のオブジェクトをjsonに変換しています。オブジェクトには2つのフィールドがあります。 @Entity public class City { @id Long id; String name; public String getName() { return name; } public void setName(String name){ this.name = name; } public Long getId() { return id; } public void setName(Long id){ this.id = id; } } これをjQueryのオートコンプリート機能で使用したいので、jsonでは「id」を「value」として表示し、「name」を「label」として表示します。ジャクソンのドキュメンテーションはこれについて明確ではなく、私は必要なことをするように遠く離れているように見えるすべての注釈を試しましたが、json としてname表示されlabelたりid、表示されたりすることはできませんvalue。 これを行う方法を知っている人はいますか?

9
Jacksonを使用したJavaオブジェクトのJSONへの変換
JSONを次のようにしたい: { "information": [{ "timestamp": "xxxx", "feature": "xxxx", "ean": 1234, "data": "xxxx" }, { "timestamp": "yyy", "feature": "yyy", "ean": 12345, "data": "yyy" }] } これまでのコード: import java.util.List; public class ValueData { private List&lt;ValueItems&gt; information; public ValueData(){ } public List&lt;ValueItems&gt; getInformation() { return information; } public void setInformation(List&lt;ValueItems&gt; information) { this.information …
166 java  json  object  jackson 

8
Jacksonを使用してJSON文字列をPretty Print JSON出力に変換する
これは私が持っているJSON文字列です: {"attributes":[{"nm":"ACCOUNT","lv":[{"v":{"Id":null,"State":null},"vt":"java.util.Map","cn":1}],"vt":"java.util.Map","status":"SUCCESS","lmd":13585},{"nm":"PROFILE","lv":[{"v":{"Party":null,"Ads":null},"vt":"java.util.Map","cn":2}],"vt":"java.util.Map","status":"SUCCESS","lmd":41962}]} 以下のように、上記のJSON StringをPretty Jackson JSON出力(Jacksonを使用)に変換する必要があります。 { "attributes": [ { "nm": "ACCOUNT", "lv": [ { "v": { "Id": null, "State": null }, "vt": "java.util.Map", "cn": 1 } ], "vt": "java.util.Map", "status": "SUCCESS", "lmd": 13585 }, { "nm": "PROFILE "lv": [ { "v": { "Party": null, "Ads": null }, "vt": "java.util.Map", …

9
ジャクソン:フィールドのシリアル化を防ぐ方法
私はパスワードフィールドを持つエンティティクラスを持っています: class User { private String password; //setter, getter.. } シリアル化中にこのフィールドをスキップしたい。しかし、それでもデシリアライズできるはずです。これは、クライアントが新しいパスワードを送信できるようにするために必要ですが、現在のパスワードを読み取ることはできません。 ジャクソンでこれをどのように達成しますか?
163 java  json  jackson 

7
ジャクソンがキャメルケースを支持してアンダースコアを克服
インターネットからJSON文字列を取得します。ほとんどのJSONと同様に、アンダースコアで区切られた長いキーが含まれています。基本的に、私の目標はJSONをjava-objectsに逆シリアル化することですが、java-codeではアンダースコアを使用しません。 たとえば、キャメルケースのフィールドを持つUserクラスがあるかもしれませんがfirstName、同時に何とかしてfirst_nameJSONからfirstNameクラスフィールドにキーをマップするようにJacksonに指示する必要があります。出来ますか? class User{ protected String firstName; protected String getFirstName(){return firstName;} }
160 java  jackson 

9
JSON Jacksonへの日付形式のマッピング
私はこのようなAPIから来る日付形式を持っています: "start_time": "2015-10-1 3:00 PM GMT+1:00" YYYY-DD-MM HH:MM am / pm GMTタイムスタンプです。この値をPOJOの日付変数にマッピングしています。明らかに、その変換エラーを示しています。 2つのことを知りたいです。 ジャクソンで変換を実行するために使用する必要があるフォーマットは何ですか?日付はこれに適したフィールドタイプですか? 一般に、ジャクソンによってオブジェクトメンバーにマップされる前に変数を処理する方法はありますか?形式、計算などの変更
154 java  json  date  jackson  pojo 

10
シリアライゼーションとデシリアライゼーション中のJSONプロパティの異なる名前
可能ですか:クラスに1つのフィールドがありますが、Jacksonライブラリでのシリアル化/逆シリアル化中にフィールドの名前が異なりますか? たとえば、「Coordiantes」というクラスがあります。 class Coordinates{ int red; } JSONからの逆シリアル化では、次のような形式にする必要があります。 { "red":12 } しかし、オブジェクトをシリアル化すると、結果は次のようになります。 { "r":12 } @JsonPropertyゲッターとセッターの両方にアノテーションを適用して(異なる値で)これを実装しようとしました: class Coordiantes{ int red; @JsonProperty("r") public byte getRed() { return red; } @JsonProperty("red") public void setRed(byte red) { this.red = red; } } しかし、私は例外を得ました: org.codehaus.jackson.map.exc.UnrecognizedPropertyException:認識されないフィールド「赤」
149 java  json  jackson 


4
JsonNodeをPOJOに変換する
これは、少し変わったように見えるかもしれないが、私は/変換マッピングするための効率的な方法を探していますJsonNodeにPOJO。 モデルの情報の一部をjsonファイルに保存し、モデルのいくつかのバージョンをサポートする必要があります。 私が行うことは、JsonNodeのメモリにjsonファイルをロードし、いくつかのバージョン管理戦略を適用して、モデルの最新バージョンに一致させることです。 ObjectMapper mapper = new ObjectMapper(); BufferedReader fileReader = new BufferedReader(new FileReader(projPath)); JsonNode rootNode = mapper.readTree(fileReader); //Upgrade our file in memory applyVersioningStrategy(rootNode); ProjectModel project = mapJsonNodeToProject(rootNode); それを行うより速い方法がない限り、おそらく手動でJsonNodesモデルに適用するだけです
143 java  json  jackson 

8
Jackson 2.2のObjectMapperからのJSONのきれいな印刷
現在、私はのインスタンスがorg.fasterxml.jackson.databind.ObjectMapperありString、かなりのJSON を取得したいと考えています。私のGoogle検索の結果はすべて、Jackson 1.xでこれを行う方法を思いついたので、2.2でこれを行う非推奨ではない適切な方法を見つけることができないようです。この質問にはコードが絶対に必要だとは思いませんが、ここに私が今持っているものがあります: ObjectMapper mapper = new ObjectMapper(); mapper.setSerializationInclusion(Include.NON_NULL); System.out.println("\n\n----------REQUEST-----------"); StringWriter sw = new StringWriter(); mapper.writeValue(sw, jsonObject); // Want pretty version of sw.toString() here
140 java  json  jackson 

8
ジャクソンのシリアル化:空の値(またはnull)を無視する
現在、Jackson 2.1.4を使用していますが、オブジェクトをJSON文字列に変換するときにフィールドを無視するのに問題があります。 これは、変換されるオブジェクトとして機能する私のクラスです: public class JsonOperation { public static class Request { @JsonInclude(Include.NON_EMPTY) String requestType; Data data = new Data(); public static class Data { @JsonInclude(Include.NON_EMPTY) String username; String email; String password; String birthday; String coinsPackage; String coins; String transactionId; boolean isLoggedIn; } } public static class Response { @JsonInclude(Include.NON_EMPTY) …
138 java  json  jackson 

14
Java 8 LocalDate Jackson形式
以下のためにjava.util.Date私が行うとき @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "dd/MM/yyyy") private Date dateOfBirth; 次に、JSONリクエストで送信する { {"dateOfBirth":"01/01/2000"} } できます。 どうすればいいですか Java 8のLocalDateフィールドか? 持ってみました @JsonDeserialize(using = LocalDateDeserializer.class) @JsonSerialize(using = LocalDateSerializer.class) private LocalDate dateOfBirth; うまくいきませんでした。 誰かがこれを行うための正しい方法を教えてください。 以下は依存関係です &lt;dependency&gt; &lt;groupId&gt;org.jboss.resteasy&lt;/groupId&gt; &lt;artifactId&gt;jaxrs-api&lt;/artifactId&gt; &lt;version&gt;3.0.9.Final&lt;/version&gt; &lt;/dependency&gt; &lt;dependency&gt; &lt;groupId&gt;com.fasterxml.jackson.jaxrs&lt;/groupId&gt; &lt;artifactId&gt;jackson-jaxrs-json-provider&lt;/artifactId&gt; &lt;version&gt;2.4.2&lt;/version&gt; &lt;/dependency&gt; &lt;dependency&gt; &lt;groupId&gt;com.wordnik&lt;/groupId&gt; &lt;artifactId&gt;swagger-annotations&lt;/artifactId&gt; &lt;version&gt;1.3.10&lt;/version&gt; &lt;/dependency&gt;
138 java  json  jackson  jax-rs  resteasy 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.