- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
在 PHP 中,当用户登录她的帐户时,我会执行以下操作以便在她浏览网站时记住该用户:
session_start();
...
$_SESSION['username'] = $username;
在可能需要敏感数据的任何其他页面上,我检查 $_SESSION['username']
是否有效。
当用户注销时,我执行以下操作
unset($_SESSION['username']
session_destroy();
如何在 Java 中做同样的事情?我有一个使用 Jersey
和 EJB
的 REST API。如果以下内容很重要,我会坚持使用 JPA、Hibernate、Glassfish 和 mysql。
验证更新:
这是正确的吗?
@Path("login")
public class UserLoginResource {
@EJB
private LoginDao loginDao;
@Context
HttpServletRequest request;
@POST
public Response login(JAXBElement<Login> jaxbLogin){
Login login = jaxbLogin.getValue();
loginDao.authenticateUserLogin(login);
HttpSession session = request.getSession();
session.setAttribute("username", login.getUsername());
return Response.ok().build();
}
}
最佳答案
Java 与 php 非常不同,因此在 java 中您只能从 HttpRequest 获取 session 的 getSession()方法,在php中它总是假设,你的代码是由一些服务器(即apache)运行的,在java中,你将从ServletContainer(即Apache Tomcat)中获取它。
与 php 不同,您不必在 java 中启动 session ,只要您在 servlet 容器中并发出请求,如果没有 session ,此客户端 servlet 容器负责启动
因此对于上述操作:
reqest.getSession().setAttribute("udername","Elbek");
//later
reqest.getSession().removeAttribute("udername");
//destroy it
reqest.getSession().invalidate();
这里的request
是HttpRequest的对象类
你可以看看这个HttpSession
我强烈推荐你看看java scopes
php 中没有这种东西,我希望有,但是没有
Here是你如何将请求对象放入你的 Jersey Action (方法),即通过注入(inject) @Context HttpServletRequest httpRequest
编辑:您不会自己创建 HttpRequest
对象,而是从 servlet 容器中获取它,您的服务器根据客户端请求创建它并为您提供。
关于相当于 session_start()、session_destroy() 和 $_SESSION ['username' 的 Java ],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12826643/
我试图修复我的登录脚本,在我的本地主机上它可以工作,但上传到我的在线测试服务器时,注销被破坏,我得到这个错误: Warning: session_destroy() [function.session
我的session_destroy() 不工作。当我以用户身份注销并返回浏览器时,显示用户在线。我在哪里有错误?谢谢。 :-) 文件登录.php query($query); if (
session_destroy() 函数有什么作用?要删除全局数组 $_SESSION 中的所有 session 变量,我必须使用 session_unset()。要从客户端浏览器中删除 sessio
我正在使用 php 身份验证方法进行摘要身份验证,如 php manual 中所示.除注销部分外,一切正常。 我正在使用 session_destroy() 尝试注销我的用户,它确实这样做了。但是我的
在我的应用程序中,当用户注销时,我想销毁所有当前用户的 session 。我是取消设置应用程序中使用的每个 session ,然后调用 session_destroy() 还是只调用 session_
这是我的问题: 我有一个名为 login.php 的登录页面(不包含 HTML 代码)。当用户正确输入其凭据时,他将被重定向到特定页面;对于这个例子,我们会说 test.php。该页面上的唯一链接退出
在 example on php.net使用session_destroy(),它指定删除一个cookie: if (ini_get("session.use_cookies")) { $pa
为什么 destroy_session() 方法不起作用。 在set_session()、destroy_session()之后,我仍然可以读取_session()。 function set_ses
在 example on php.net使用session_destroy(),它指定删除一个cookie: if (ini_get("session.use_cookies")) { $pa
我想知道如何强制用户“注销”。我使用 php-mysqli 系统进行用户身份验证,如果通过 mysqli 查询“锁定”用户帐户,我希望他立即注销。 如果有机会完成这件事,或者 - 我的想法 - 如果他
我正在开发一个在线机票预订系统,在成功预订(付款后)后,我想清除 session ID。但问题是我无法清除它,尽管我使用了 session_destroy() 来销毁 session 。 注意:我已经
我需要创建一个链接,点击后将在 php 中运行: session_destroy(); 我知道如何在 html 中创建链接,但我不知道如何使其与 php 交互。感谢您的帮助。 最佳答案 例如,您想使用
我目前正在我的表单页面中保存一个 session : $testingvalue = "SESSION TEST"; $_SESSION['testing'] = $testingvalue; 在另一
我正在寻找 JavaScript 代码来销毁不活跃的用户 session 。 (用于实时聊天网站) 到期时间:该网站每 5 分钟检测一次用户的事件,然后使用上次事件时间戳更新数据库。因此,如果用户从
我希望在用户单击“注销”时销毁 session ,我试图通过使用 jQuery 调用 onClick 函数来实现此目的,该函数随后将调用包含 session_destroy(); 的 .PHP 文件;
在PHP手册中,对session_destroy()的描述功能是: session_destroy() destroys all of the data associated with the cur
我正在尝试注销我的页面,但 session_destroy 和设置 cookie 不起作用。这是我的代码: $page = $_GET["page"]; if ($page == "l
这个问题在这里已经有了答案: Why Session object destruction failed (4 个答案) 关闭 9 年前。 我有这个 php 脚本,但在破坏 session 时遇到了
好吧,那里有很多“简单 session ”问题,但我似乎找不到我要找的东西。这让我有点烦恼,因为 PHP 文档似乎没有很好地解释这一点。 三重问题。 它说 session_destroy() 会清除
这个问题在这里已经有了答案: 关闭 11 年前。 Possible Duplicate: What is the difference between session_unset() and ses
我是一名优秀的程序员,十分优秀!