Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
只要服务器工作,如何在Javaservlet中保留对象?_Java_Jsp_Servlets - Fatal编程技术网

只要服务器工作,如何在Javaservlet中保留对象?

只要服务器工作,如何在Javaservlet中保留对象?,java,jsp,servlets,Java,Jsp,Servlets,我想在java servlet中创建一个对象,我需要将该对象持久化到服务器会话中,而不是用户会话中。我知道如何在asp.net中创建该对象,但在java servlet中我一无所知。在应用程序范围中设置它 从servlet中 public void doPost(...) { getServletContext().setAttribute("myPersistentObject", someObject); } 从JSP <% application.setAttribu

我想在java servlet中创建一个对象,我需要将该对象持久化到服务器会话中,而不是用户会话中。我知道如何在asp.net中创建该对象,但在java servlet中我一无所知。

在应用程序范围中设置它

从servlet中

public void doPost(...) {
   getServletContext().setAttribute("myPersistentObject", someObject);
}
从JSP

<%
    application.setAttribute("myPersistentObject", someObject);
%>

或者更好地使用JSTL:

<c:set value="${someObject}" scope="application" />

在应用范围内设置

从servlet中

public void doPost(...) {
   getServletContext().setAttribute("myPersistentObject", someObject);
}
从JSP

<%
    application.setAttribute("myPersistentObject", someObject);
%>

或者更好地使用JSTL:

<c:set value="${someObject}" scope="application" />

servlet是单例的。您可以为servlet分配一个实例变量。只需确保正确同步对此变量的访问

您还可以使用“应用程序”范围,即在
ServletContext
中设置一个属性。相同的同步警告适用于:

request.getServletContext().setAttribute("foo", foo);
这样,所有servlet和JSP都可以使用相同的对象

${applicationScope.foo}

servlet是一个单例。您可以为servlet分配一个实例变量。只需确保正确同步对此变量的访问

您还可以使用“应用程序”范围,即在
ServletContext
中设置一个属性。相同的同步警告适用于:

request.getServletContext().setAttribute("foo", foo);
这样,所有servlet和JSP都可以使用相同的对象

${applicationScope.foo}

您需要提供更多信息以获得更准确的答案。
简单来说,将对象设置为servlet的静态成员。

您需要提供更多信息以获得更精确的答案。 简单来说,将对象设置为servlet的静态成员。

您可以将对象设置为

为了解决这个问题,您可以详细说明您的问题以获得更好的答案。

您可以将对象设置为


为了解决这个问题,你可以详细说明你的问题以得到更好的答案。

y你想要那个对象,你可以详细说明你想要那个对象,你可以详细说明