2019独角兽企业重金招聘Python工程师标准>>>

Coding a simple REST Service with Vert-x

We will now run a bit more advanced example which will leverage a REST Service. This service, exposes a @GET Resource which will print out the parameter passed on the PATH URL of your Web application:

package org.demo.vertx;

import javax.ws.rs.GET;

import javax.ws.rs.Path;

import javax.ws.rs.PathParam;

import javax.ws.rs.core.Response;

@Path("/")

public class HelloWorldService {

  @GET

  @Path("/{name:.*}")

  public Response doGet(@PathParam("name") String name) {

    if (name == null || name.isEmpty()) {

      name = "World";

    }

    return Response.status(200).entity("Hello " + name).build();

  }

}

Some changes will be required in your Verticle as well to build the JAX-RS controller deployment, adding to the JAX-RS registry the HelloWorldService:

package org.demo.vertx;

import io.vertx.core.AbstractVerticle;

import org.jboss.resteasy.plugins.server.vertx.VertxRequestHandler;

import org.jboss.resteasy.plugins.server.vertx.VertxResteasyDeployment;

public class DemoV extends AbstractVerticle {

  @Override

  public void start() throws Exception {

    VertxResteasyDeployment deployment = new VertxResteasyDeployment();

    deployment.start();

    deployment.getRegistry().addPerInstanceResource(HelloWorldService.class);

    // Start the front end server using the Jax-RS controller

    vertx.createHttpServer()

        .requestHandler(new VertxRequestHandler(vertx, deployment))

        .listen(8080, ar -> {

          System.out.println("Server started on port "+ ar.result().actualPort());

        });

  }

}

In order to be able to build it, you need to include resteasy vert-x dependency:

1

2

3

4

5

<dependency>

   <groupId>org.jboss.resteasy</groupId>

   <artifactId>resteasy-vertx</artifactId>

   <version>3.1.0.Final</version>

</dependency>

Let's test it!

1

2

$ curl http://localhost:8080/Frank

Hello Frank

转载于:https://my.oschina.net/masterworker/blog/1098888

vert.x 结合JAX-RS相关推荐

  1. jax rs mysql_Jersey / JAX-RS ExceptionMapper MySQL

    我正在学习Jersey / JAX-RS,我需要一些ExceptionMapper的帮助 . 我有一个UserFacade类,AbstractFacade类和User类本身,都非常标准,主要是通过在N ...

  2. jax rs mysql_liferay7-rest开发JAX-RS规范详解

    简介 JAX-RS (JSR-311) 是为 Java EE 环境下的 RESTful 服务能力提供的一种规范.它能提供对传统的基于 SOAP 的 Web 服务的一种可行替代. 在本文中,了解 JAX ...

  3. jax rs mysql_JAX-RS示例(Jersey)

    我们可以通过 jersey 实现创建JAX-RS示例. 为此,需要加载 jersey相关jar文件或使用Maven框架. 在这个例子中,我们使用jersey jar文件来实现JAX-RS jersey ...

  4. 泽西岛/贾克斯RS:流式JSON

    大约一年前,我写了一篇博客文章,展示了如何使用Jersey / Jax RS流式传输HTTP响应 ,最近我想做同样的事情,但是这次使用JSON. 一种常见的模式是获取我们的Java对象并获​​取该对象 ...

  5. 使用华为云CSE开发微服务应用

    概述 CSE(Cloud Service Engine) Java SDK是华为推出的产品级微服务开发框架,已经在华为内部多个大型产品上得到了使用和验证.使用CSE Java SDK开发微服务,可以最 ...

  6. 必学Java类库/常用Java类库大全(awesome-java)

    完整资源地址:http://www.21doc.net/java/awesomejava 对象映射 简化对象映射的框架. Dozer - 使用注释,API或XML配置将数据从一个对象复制到另一个对象的 ...

  7. Spring Cloud Alibaba - 13 OpenFeign应用篇

    文章目录 What's Feign ( Ribbon+RestTemplate) Vs Feign Feign整合 artisan-feign-api 子模块构建 Step1 搞依赖 Step2 修改 ...

  8. Drools 5.1.1(一)

    http://shikonglaike.iteye.com/blog/1236354 第一章欢迎 我总是和终端业务用户争论不休,理解规则和流程.最新规则和事件处理的区别.对此,在他们的意识中有这样的问 ...

  9. 【效率专精系列】善用API统一描述语言提升RestAPI开发效率

    团队内部RestAPI开发采用设计驱动开发的模式,即使用API设计文档解耦前端和后端的开发过程,双方只在联调与测试时耦合.在实际开发和与前端合作的过程中,受限于众多因素的影响,开发效率还有进一步提高的 ...

  10. java web service索引

    2019独角兽企业重金招聘Python工程师标准>>> 正规军: 基于SOAP的JAX-RPC , JAX-WS, 基于RESTful的JAX-RS 杂牌:Apache系列. 书 R ...

最新文章

  1. 典型用户 persona
  2. JQuery 定期刷新网页,保持登录状态Session
  3. [转]WebView长按弹出复制粘贴
  4. VPC 2007 Console界面消失以及解决方法
  5. hadoop配置文件还原_hadoop配置文件详解,安装及相关操作
  6. 加州大学欧文分校 计算机专业,UCI的Computer Science「加州大学欧文分校计算机科学系」...
  7. Delphi书籍 教程下载
  8. Python语法特点
  9. 在R中使用Primer3和NCBI-BLAST进行高通量引物设计
  10. MFC之MessageBox用法
  11. 开源的在线视频点播系统,值得分享!
  12. 永久禁用software reporter 进程,占用高解决方法。【永久禁用software_reporter_tool.exe程序】
  13. python数据库execute_python执行execute对mysql插入数据时的参数问题
  14. httprunner 3.x学习10 - parameters 参数化
  15. 18-基于STM32的室内可见光通信系统设计
  16. UnFlow:具有双向普查损失的光流的无监督学习
  17. hive改表结构的两个坑
  18. C语言从入门到精通 【精读C Prime Plus】【C语言笔记1-4章节】【更新中~】
  19. android im---weichat
  20. JDK 9-17 新特性介绍

热门文章

  1. 15.文件系统——软RAID的实现(二)(mdadm,watch, RAID1)
  2. 30岁之前必须明白的道理(你现在知道此生无憾了)
  3. SQL Server中的GAM页和SGAM页
  4. android activity之间传值
  5. 《程序员代码面试指南》第五章 字符串问题 拼接所有字符串产生字典顺序最小的大写字符串...
  6. iOS自动布局框架-Masonry详解
  7. Linux4.4 TCP源码分析
  8. 比特币的挑战者 BCH 带着开发者们来到湾区了!
  9. BCH底层协议真的不能被修改吗?
  10. 别了比特币,BCH将领导加密货币!