_design ビューの結果を Java オブジェクト (getMethods()) に解析するにはどうすればよいですか?
宣言された文字列を使用する代わりに、クエリ結果要素を Java オブジェクトに解析する方法を知っている人はいますか? 出来ますか?ここで見つけたいくつかの提案は、私のコンセプトに合わない宣言された文字列を使用していました。
マイ ドキュメントの構造は次のようになります。
{
"_id": "37636ec5fc94e8e60a2744720e001441",
"_rev": "1-cc97f6f67206667466d619901fb4eb8b",
"CREATED_DATE": "19-09-13",
"MODIFICATION_DATE": "20-09-13",
"VERSION": "1.0",
"VISIBILITY": "True",
"PRICE_LIST_ID": "00100",
"MODIFICATION_USER": "IKK",
"CUSTOMER_ID": "02227802",
"CREATION_USER": "IKK",
"PDF_FILE_NAME": "KOOO",
"DELETION_FLAG": "1",
"PDF_FILE_CONTENT": "Pricelist"
}
私の _design ドキュメントは次のとおりです: _design/VIEW_ALL_DOCS
function(doc){
if(doc.DELETION_FLAG == "1" ){
emit(doc.DELETION_FLAG, doc);
}
}
以下は、アプリケーションに使用したビュークエリです
ViewResults resultAdHoc2 = DbProperties.db.view("_design/VIEW_ALL_DOCS"); // 2
ViewResults resultAdHoc = DbProperties.db.view("_all_docs"); // 1
Gson gson = new Gson();
PriceListDocument pld = gson.fromJson(resultAdHoc.toString(), PriceListDocument.class);
System.out.println("id: "+pld.getPriceListId()+" Document Name:"+pld.getDocFileName()
+" Original File Name: "+pld.getOriginalFileName()+" Deletion Flag: "+pld.isDeletionFlag()
+" Doc FileContents: "+pld.getDocFileContents() +" Visibility: "+pld.getVisibility()
+" Doc File Version: "+pld.getDocFileVersion() +" Creation Date: "+pld.getCreationDate()
+" Creation User: " +pld.getCreationUser() +" Modification Date "+pld.getModificationDate()
+" Modification User "+pld.getModificationUser());
コンソール出力は次のとおりです。
id: null Document Name:null Original File Name: null Deletion Flag: false Doc FileContents: null Visibility: null Doc File Version: 0 Creation Date: null Creation User: null Modification Date null Modification User null
の出力resultAdHoc
は以下のとおりです。要素のないドキュメントヘッダーのみが返されました
{"total_rows":9,"offset":0,"rows": [{"id":"0ecb06ce81df89c03dbedecf47001b4b","key":"0ecb06ce81df89c03dbedecf47001b4b","value":
{"rev":"2-67d92be4f768a6d91f4f4196a264897e"}},{"id":"0ecb06ce81df89c03dbedecf47002a89","key":"0ecb06ce81df89c03dbedecf47002a89","value"
:{"rev":"1-7a0c8243e56157ae1d71d3a63c49e590"}}, {"id":"0ecb06ce81df89c03dbedecf47002b81","key":"0ecb06ce81df89c03dbedecf47002b81","value":]}
の出力resultAdHoc2
は、デザイン ビューで JavaScript 関数が返されましたが、基準に一致したドキュメントは返されませんでした。
{"_id":"_design/VIEW_ALL_DOCS","_rev":"1-8a5809780cead5e4747fb0e53ebca081","language":"javascript","views":{"VIEW_ALL_DOCS":{"map":"function(doc){\nif(doc.DELETION_FLAG == \"0\" ){\n emit(doc.DELETION_FLAG, doc);\n }\n}"}}}