`
flycun2
  • 浏览: 27629 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

RESTEasy @path 与正则表达式映射

阅读更多
@path 不限于简单的路径表达式,也可以在@path中插入正则表达式,通过如下格式:
"{" variable-name [ ":" regular-expression ] "}"

package com.example.rest.resteasy.service;

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.core.Response;

@Path("/hello")
public class HelloWorldRestService {
	// @Path and regular expression mappings
	@GET
	@Path("{var:.*}/stuff")
	public Response getStuff() {
		String result = "RESTEasy getStuff() is called! ";
		return Response.status(200).entity(result).build();
	}
}


请求1:http://localhost:8080/resteasy-example/hello/aa/stuff
请求2:http://localhost:8080/resteasy-example/hello/aa/bb/stuff
RESTEasy getStuff() is called!




注:正则表达式中有一部分是可选的,如果没有提供表达式,默认匹配一个特定的段,例如:
@Path("/hello/{var}/stuff")

可以匹配:
GET /hello/foo/stuff
GET /hello/bar/stuff

但是不能匹配:
GET /hello/a/bunch/of/stuff
  • 大小: 4 KB
分享到:
评论

相关推荐

    Resteasy英文文档

    #### 4.1 @Path和正则表达式映射 通过实例展示如何使用`@Path`注解结合正则表达式定义资源路径,增强路由灵活性。 ### 五、@PathParam #### 5.1 高级@PathParam和正则表达式 详细介绍如何利用`@PathParam`和正则...

    resteasy-reference-guide-en-US

    RESTEasy支持基本的路径参数匹配,也支持正则表达式匹配和更复杂的路径分段处理。 ```java @Path("/users/{userId}") public class UserResource { @GET public User getUser(@PathParam("userId") int userId) ...

    RESTEasy实现上传下载文件

    在本文中,我们将深入探讨如何使用RESTEasy和Guice框架实现文件的上传与下载功能。RESTEasy是一个基于Java的RESTful Web服务实现,它与Java EE应用服务器集成,而Guice是Google提供的一款轻量级依赖注入框架,帮助...

    resteasy guide

    RESTEasy支持正则表达式的路径映射,以及更复杂的`@PathParam`和`PathSegment`组合使用。 #### 6. @QueryParam `@QueryParam`用于从HTTP请求的查询字符串中获取参数值。 #### 7. @HeaderParam `@HeaderParam`...

    restEasy 学习总结,附带源码

    而 Servlet 3.0 引入了注解驱动的部署,允许开发者直接在类或方法上使用 `@WebServlet` 和 `@Path` 注解,简化了 REST 服务的部署过程。RESTEasy 可以利用这种特性自动扫描并注册 REST 资源类,减少了配置文件的依赖...

    RestEasy简介

    它定义了一系列注解,如`@Path`、`@GET`、`@POST`等,使得开发者能够用面向对象的方式定义资源和操作。RestEasy是JAX-RS规范的实现之一,它提供了丰富的功能集来支持RESTful服务的开发。 ### RestEasy核心特性 1. ...

    resteasy helloworld demo

    然后在 `resteasy-helloworld-demo` 的 `META-INF` 目录下创建一个名为 `resteasy-applications.properties` 的文件,里面写入 `resteasy.servlet.mapping.prefix=/*`,这将把所有请求映射到 RESTEasy 处理。...

    resteasy使用netty

    这样,当Netty接收到HTTP请求时,会将其交给RestEasy进行路由和处理,RestEasy会根据@Path注解找到对应的资源方法,并执行该方法。 在实际应用中,我们可以使用以下步骤实现这个过程: 1. 添加依赖:确保项目中...

    Spring整合RestEasy示例工程源码

    - **创建REST服务**:定义REST接口和实现,使用RestEasy的注解如`@Path`、`@GET`、`@POST`等。 - **注册服务**:在Spring配置中注册REST服务的实现,确保它能在Spring容器中被管理。 - **测试**:编写测试用例,验证...

    resteasy实例demo

    3. **资源类(Resource Classes)**:在RestEasy实例中,你将看到使用`@Path`注解定义的Java类,这些类代表了RESTful服务的资源。例如,`@Path("/hello")`表示该类处理所有始于"/hello"的HTTP请求。 4. **HTTP方法...

    resteasy-jaxrs-2.3.2官方jar包

    通过注解,开发者可以轻松地将HTTP操作映射到Java方法上,比如`@GET`, `@POST`, `@Path`等。RESTEasy是JAX-RS的一个实现,它提供了许多额外的功能,如拦截器、异常处理器、客户端支持等。 2. **RESTEasy注解**:...

    resteasy jar包

    1. **API支持**:Resteasy 2.1 GA遵循JAX-RS 1.1规范,提供了一组用于创建REST服务的注解,如`@Path`、`@GET`、`@POST`、`@QueryParam`等,这些注解使得代码更加简洁且易于理解。 2. **资源类**:通过在Java类上...

    resteasy示例

    * 不需要配置文件,只要把JARs文件放到类路径里面,添加 @Path 注解就可以了。 * 完全的把 RESTEeasy 配置作为Seam 组件来看待。 * HTTP 请求由Seam来提供,不需要一个额外的Servlet。 * Resources 和providers...

    RESTEasy之返回JSON数据格式

    创建一个Java类,用`@Path`注解来定义URL映射。然后,可以使用`@GET`、`@POST`等HTTP方法注解来处理请求。为了返回JSON,可以使用`@Produces("application/json")`注解指定响应的MIME类型。 ```java @Path("/api...

    Netty-Resteasy-Spring

    @Path,标注资源类或方法的相对路径 @GET,@PUT,@POST,@DELETE,标注方法是用的HTTP请求的类型 @Produces,标注返回的MIME媒体类型 @Consumes,标注可接受请求的MIME媒体类型 @PathParam,@QueryParam,@...

    resteasy参考文档及jar包

    1. **JAX-RS兼容性**:RESTEasy是JAX-RS规范的实现者,这意味着你可以使用JAX-RS定义的注解(如`@Path`, `@GET`, `@POST`, `@PUT`, `@DELETE`等)来创建RESTful服务。 2. **注解驱动**:通过在类和方法上使用注解,...

    resteasy2.2.1官方jar包

    2. **注解驱动**:Resteasy支持多种JAX-RS注解,如`@Path`、`@PathParam`、`@QueryParam`、`@HeaderParam`、`@CookieParam`和`@FormParam`,用于处理HTTP请求的不同部分,如路径参数、查询参数、头信息和表单数据。...

Global site tag (gtag.js) - Google Analytics