jax-rs(Java API for RESTful Web Services) 实践教程 之四 —— @Context注入HttpServletRequest 使REST保持状态!

 转载请注明出处http://blog.csdn.net/exsuns

 

 

jax-rs提供了一个注解注入的方式来取得客户端的信息

当jax-rs服务基于servlet发布的时候 ,还可以通过@Context注入servlet中的ServletConfig , ServletContext , HttpServletRequest , HttpServletResponse

然后REST就可以通过sessionid来保持住用户状态


使用方法:

 

建个web工程,并加入jax-rs(jsr311)的JAR包


新建一个类

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
当我们在开发RESTful服务时,经常需要对接口参数进行校验,以确保接口的输入数据符合业务要求。@Validated 是Spring框架中的一个注解,它可以结合JAX-RS中的@Valid 注解,实现对RESTful服务接口对象参数的校验。下面是一个详细的示例: 假设我们有一个RESTful服务接口,用于创建用户账号,接口定义如下: ``` @Path("/users") public class UserResource { @POST @Path("/") public Response createUser(@Valid User user) { // 处理创建用户账号的业务逻辑 } } ``` 上述代码中,@POST 和 @Path("/") 注解表示该接口可以处理HTTP POST请求以及URI路径为 /users 的HTTP请求。@Valid 注解表示需要对 User 参数进行校验,但是默认情况下,该注解会对 User 对象中的所有属性进行校验,如果我们只需要对某些属性进行校验,可以使用@Validated 注解进行分组校验。例如,我们可以定义一个名为CreateUserGroup的分组,用于校验创建用户时必填的属性,例如用户名和密码: ``` public interface CreateUserGroup { // 分组校验标识接口 } ``` 接着,在User类中使用@NotNull 和 @NotBlank 注解,标记用户名和密码属性必填: ``` public class User { @NotNull(groups = {CreateUserGroup.class}) private String username; @NotNull(groups = {CreateUserGroup.class}) @NotBlank(groups = {CreateUserGroup.class}) private String password; // 其他属性和方法省略 } ``` 最后,在 createUser() 方法中使用@Validated 注解,标记需要进行分组校验的分组名称: ``` @Path("/users") public class UserResource { @POST @Path("/") public Response createUser(@Validated(CreateUserGroup.class) User user) { // 处理创建用户账号的业务逻辑 } } ``` 上述代码中,@Validated(CreateUserGroup.class) 注解表示对 User 对象进行 CreateUserGroup 分组校验。这样,在调用 createUser() 方法时,就只会对用户名和密码进行校验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值