2016-06-28 4 views
0

に列名を追加する方法を、私は、このようなクエリを持っている:は、例えば、クエリ結果SPRING JPA

@Query("SELECT u.name FROM User u") 
public List<User> findAllUsers(); 

は、私が知っている、これはすべてのユーザーを表示するための最適な方法ではありませんが、それだけで、たとえばです私のクエリはより複雑です。

私は、このような答えを持っている:[{ "トム・ウォーリー"}]

しかし、私が取得したい: [{ "名": "トム・ウォーリー"}]

どのように追加します列名をカスタムクエリに変換しますか?

答えて

0

おそらく、あなたはjson形式で応答を返す方法について話しているかもしれません。

このレスポンスを持つjsonが必要な場合は、 という2つのクラスを作成する必要があります。一方はオブジェクトの作成、もう一方はリストからの応答の作成です。

public class UserResponseList extends ArrayList<UserResponse>(){ 

public UserResponseList(List <UserResponse> myList){ 
super(myList); 
} 

} 
public class UserResponse(){ 

private String name; 
} 

最後に、あなたは、コンストラクタであなたのリストを送信するUserResponseListインスタンス化し、あなたの特定の形式を使用してJSONレスポンスを持っています。

+0

私は試みることができます...しかし、私は本当にこれが必要だと思いますか?私のクエリがカスタムではないとき、私はすでにjson形式を持っているからです。たとえば、findAll(); –

+0

特定のjsonレスポンスが必要であることを理解しています** [{"name": "Tom Wally"}] **、 ** List **あなたはあなたのjsonレスポンスで返す特定のフィールドだけを持つarraylistとしてレスポンスを構築する必要があります。 – duardito

+0

はい、それを行う方法の例を表示できますか? –

関連する問題