Java 为复杂对象生成JSON消息

Java 为复杂对象生成JSON消息,java,json,spring,rest,jersey,Java,Json,Spring,Rest,Jersey,我启动了一个企业应用程序,其中web/mobile、android和ios是客户端。因此,我决定使用Jersey实现RESTFull资源,并使用SpringIO注入服务。但我主要被困在两个地方 1. To Use DI with Spring. -- If I use jersey 2.7, it can able to produce json. Here I can not use Spring DI. 2. Produce response for complex o

我启动了一个企业应用程序,其中web/mobile、android和ios是客户端。因此,我决定使用Jersey实现RESTFull资源,并使用SpringIO注入服务。但我主要被困在两个地方

   1. To Use DI with Spring. -- If I use jersey 2.7, it can able to produce 
    json. Here I can not use Spring DI.
   2. Produce response for complex objects.-- If I use Jerse-Spring 1.8, 
       My Objects not converting as json.
  • 为复杂对象生成json消息的最佳方法是什么,例如类内部有集合,并且有持久性/休眠注释
  • DI的最佳解决方案是什么,是Spring DI还是EJB3.0(我不太了解EBJ 3.x)
  • 我的数据库设计已经结束,许多DAO都经过了测试,但要使用我的服务,我面临一个问题。我最近的帖子是:


    非常感谢您的帮助

    您可以使用带有gson库的HttpServlet来创建REST服务。请参见下面的简单示例


    您可以使用带有gson库的HttpServlet来创建REST服务。请参见下面的简单示例

    package com.nl.services.ws.sincronizacao;
    
    import java.io.IOException;
    import java.io.PrintWriter;
    import javax.ejb.EJB;
    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import com.google.gson.Gson;
    
    @WebServlet(value = "/TestGsonHttp")
    public class TestGsonHttp extends HttpServlet{
    
        @EJB
        private yourEjbClass;
    
        @Override
        protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    
            // Your Entity
            Client c =  yourEjbClass.getClientById(1);
    
            Gson g = new Gson();
            String jsonResult = g.toJson(c);
    
            PrintWriter writer = resp.getWriter();
            writer.print(jsonResult);;
            writer.flush();
            writer.close();
        }
    }