2016-12-04 8 views
0

JPQL JOIN操作の結果を複数のエンティティにわたってList<Object>として取得します。 マッピングリスト<Object>をJSONObjectのJSONObjectのRESTコール

は、その後、私はJSONArraysのJSONArrayに変換されますREST APIでその List<Object>タイプを置く:

@RequestMapping(value = "/product/item/{id}", method = RequestMethod.GET) 
    public ResponseEntity<List<Object>> getProductsWithItemsByUserID(@PathVariable Long id) { 
     List<Object> result= null; 
     result= productAndItemServiceImpl.getProductsWithItemsByUserID(id); 
     if (result== null) 
      return new ResponseEntity<List<Object>> (HttpStatus.NOT_FOUND); 

     return new ResponseEntity<List<Object>>(result, HttpStatus.OK); 
    } 

しかし、私はこのREST APIのJSONObjectのJSONArrayを生産したかったです。 Spring Bootで手動マッピングでこれを実現するにはどうすればよいですか?

答えて

0

クエリが返すすべてのフィールドを含むクラス(ここではProductDTOとする)を作成します。その新しいクラスのオブジェクトにオブジェクトをマップし、以下を返す:ProductDTOの

return new ResponseEntity<List<ProductDTO>>(result, HttpStatus.OK); 

インスタンスは、その後、自動的に適切なJSON構造にマップする必要があります。