java - Dropwizard资源类调用另一个资源方法类?

标签 java json dropwizard

我想知道在 dropwizard 中是否可以从不同的资源类调用另一个资源方法类。

我查看了其他帖子,使用 ResourceContext 允许从另一个资源类调用 get 方法,但也可以使用另一个资源类的 post 方法。

假设我们有两个资源类 A 和 B。在 A 类中,我创建了一些 JSON,我想使用 B 的 post 方法将该 JSON 发布到 B 类。这可能吗?

最佳答案

是的,资源上下文可用于从相同或不同资源中的另一个方法访问 POSTGET 方法。
借助@Context,您可以轻松访问这些方法。

@Path("a")
class A{
    @GET
    public Response getMethod(){
        return Response.ok().build();
    }
    @POST
    public Response postMethod(ExampleBean exampleBean){
        return Response.ok().build();
    }
}

您现在可以通过以下方式从资源 B 访问资源 A 的方法。

@Path("b")
class B{
    @Context 
    private javax.ws.rs.container.ResourceContext rc;

    @GET
    public Response callMethod(){
        //Calling GET method
        Response response = rc.getResource(A.class).getMethod();

        //Initialize Bean or paramter you have to send in the POST method
        ExampleBean exampleBean = new ExampleBean();

        //Calling POST method
        Response response = rc.getResource(A.class).postMethod(exampleBean);

        return Response.ok(response).build();
    }
}

关于java - Dropwizard资源类调用另一个资源方法类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40430666/

相关文章:

java - 使用 weblogic.security.encrypt 实用程序对不同的多个 weblogic 实例加密明文字符串

java - 线程 "main"java.lang.NoClassDefFoundError : com/fasterxml/jackson/annotation/JsonAutoDetect Error when trying to convert json to POJO 中的异常

java - 在 Jersey Filters 中添加自定义 header 不起作用

java - 使用 Selenium Webdriver 并行测试多个浏览器

Java libjava.so 文件错误

javascript - 简单的 Chrome 扩展但有问题吗?

java - Dropwizard 解压缩请求过滤器

java - 在junit5中进行单元测试dropwizard时如何注入(inject)HttpSession和HttpServletRequest?

java - 如何在编译期间逐步调试注释处理器?

java - 假设 Jackson 中根节点的所有子节点都是字段名称是否合理?