2014-03-13 61 views

回答

18

使用JAX-RS进行REST风格的Web服务非常简单。这里是基础知识。通常你定义一个或多个服务类/接口是通过JAX-RS annotations定义REST操作,像这样的:

@Path("/user") 
public class UserService { 
    // ... 
} 

你可以有你的对象自动地在你的方法通过这些注释注入:

// Note: you could even inject this as a method parameter 
@Context private HttpServletRequest request; 

@POST 
@Path("/authenticate") 
public String authenticate(@FormParam("username") String username, 
     @FormParam("password") String password) { 

    // Implementation of your authentication logic 
    if (authenticate(username, password)) { 
     request.getSession(true); 
     // Set the session attributes as you wish 
    } 
} 

HTTP Sessions可以像往常一样通过getSession()getSession(boolean)HTTP Request对象访问。其他有用的注释是@RequestParam@CookieParam或甚至@MatrixParam等等。

欲了解更多信息,您可能需要阅读RESTEasy User GuideJersey User Guide,因为两者都是优秀的资源。

+0

谢谢你的回答。假设我有一个映射多个模块的用户对象。如何将会话绑定到用户对象。 – Harish

+0

你能解释一下你是如何将会话绑定到用户对象的?你想实现什么? – xea

+0

我的意思是说,我从HTML5 Web UI登录。然后,我想将此用户对象关联(绑定)到会话。绑定到Session的这个User对象将在内部使用。 也就是说,无论何时使用Uder对象,相应的会话标识都应该始终标记为它。 – Harish

相关问题