2016-05-13 6 views
0

私は自分自身のUniversal Binary JSON Specificationのような仕様を実装したいと思います。私の最初のステップの1つとして、String com.google.gson.Gson.toJson(Object src)メソッドではGsonのようにオブジェクトをパラメータとして受け取るメソッドが必要です。だから私はフィールドとそのデータ型を知りたい。私が知る限り、Gsonはそれを達成するためにリフレクションを使用します。反射の代替

もう1つの「解決策」はシリアライゼーションです。しかし、そこからフィールドを抽出するのは難しいでしょう。とにかく、オブジェクトがSerializableを実装するために必須ではないということを好むでしょう。

反射は私の意図と一緒に行く方法ですか?

答えて

2

もっと限定されたアプローチではあるが、クリーナーのためのBeanイントロスペクション(java.beans.Introspectorを参照)を検討することもできます。

オブジェクトが純粋な豆ではない場合(つまり、ゲッターやセッターなしでフィールドをマップする必要がある場合)、リフレクションを使用する必要があります。

+0

非常に有望そうです。特に、'getBeanInfo(Class beanClass) 'メソッドは非常に良い音を出します。 getterとsetterの必要性は問題ではありません。 – Martin