我创建了一个宁静的服务女巫用GSON api生成JSON,但我需要在JSON结构前面的表名,我不能显示这个,让我显示代码
package webService;
import java.util.ArrayList;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import com.google.gson.Gson;
import model.AccessManager;
import dto.Usuarios;
@Path("/UsuariosService")
public class UsuariosService
{
@GET
@Path("/usuarios")
@Produces("application/json")
public String usuarios()
{
String usuarios = null;
ArrayList<Usuarios> usuariosList = new ArrayList<Usuarios>();
try
{
usuariosList = new AccessManager().getUsuarios();
Gson gson = new Gson();
usuarios = gson.toJson(usuariosList);
} catch (Exception e)
{
e.printStackTrace();
}
return usuarios;
}
}
我需要的回报是:
{
"usuarios" : [
{"usr_id":1,"usr_login":"teste@gmail.com","usr_pwd":"123456"},
{"usr_id":2,"usr_login":"teste@teste.com.br","usr_pwd":"123456"}
]
}
但我得到的回报是:
[
{"usr_id":1,"usr_login":"teste@gmail.com","usr_pwd":"123456"},
{"usr_id":2,"usr_login":"teste@teste.com.br","usr_pwd":"123456"}
]
即。没有表的名称,但我的SAPUI5应用程序中需要该名称
答案 0 :(得分:1)
什么阻止您将其添加为String
"{\"usuarios\" :" + gson.toJson(usuariosList) + "}"
虽然你需要逃避&#34;
否则你必须引入一个不同的返回对象
class ReturnObject {
List<Usuarios> usuarios;
public ReturnObject(List<Usuarios> usuarios) {
this.usuarios = usuarios;
}
}
并使用
gson.toJson(new ReturnObject(usuariosList));