java - 如何在 REST Jersey Web 应用程序中创建、管理、关联 session

标签 java html rest session web-applications

HTML5 UI 连接到后端(REST Jersey 到业务逻辑到 Hibernate 和数据库)。 我需要为每个用户登录创建并维护一个 session ,直到用户注销。

能否请您指导我可以使用哪些技术/API。 是否还需要在 REST 客户端处理一些事情..

最佳答案

将 JAX-RS 用于 RESTful Web 服务非常简单。这是基础知识。您通常定义一个或多个服务类/接口(interface),通过 JAX-RS annotations 定义您的 REST 操作,像这样:

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

您可以通过这些注解将您的对象自动注入(inject)到您的方法中:

// 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可从 HTTP Request 访问像往常一样通过 getSession()getSession(boolean) 获取对象。其他有用的注释包括 @RequestParam@CookieParam 甚至 @MatrixParam 等等。

有关更多信息,您可能需要阅读 RESTEasy User GuideJersey User Guide因为两者都是极好的资源。

关于java - 如何在 REST Jersey Web 应用程序中创建、管理、关联 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22377903/

相关文章:

java - 如何将 Vector<Vector<String>> 转换为 Object[][]?

java - 为什么在使用 apache poi api 在我的 java seam 应用程序中生成它们时,我会得到损坏的 excel 文件

java - Android Studio : While Loop Freezing Application

java - 如何为 java 命令行应用程序指定 jar 库的通配符路径?

javascript - 完全摆脱图标

html - CSS 下拉导航右对齐

html - 我想显示不透明度 :1 for input[type ="number"] placeholders

java - 如何从 REST Controller 端点返回 LocalDateTime?

java - 如何使端点在使用resttemplate访问时仅接受springboot中启用@crossorigin的uri?为什么我没有收到 cors 错误?

rest - 谷歌分析 API : tiny differences in results between GA API and Google Analytics UI