jsp页面获取httpSession值并进行显示
时间: 2023-06-24 20:09:04 浏览: 155
在JSP页面中,可以通过内置对象`session`来获取`HttpSession`对象,然后再获取其中存储的值。以下是一个简单的示例:
```jsp
<%@ page import="javax.servlet.http.HttpSession" %>
<%
HttpSession session = request.getSession();
String username = (String) session.getAttribute("username");
%>
<p>Welcome, <%= username %>!</p>
```
在上面的例子中,我们首先通过`request.getSession()`方法获取到当前请求的`HttpSession`对象,然后再通过`getAttribute()`方法获取其中存储的名为`username`的值。最后,在JSP页面中使用`<%= %>`语法将该值显示出来。
需要注意的是,在获取`HttpSession`对象时,如果当前请求中不存在对应的`HttpSession`,则会自动创建一个新的`HttpSession`对象。如果您不希望自动创建新的`HttpSession`对象,可以使用`request.getSession(false)`方法来获取`HttpSession`对象,如果当前请求中不存在对应的`HttpSession`,则返回`null`。
相关问题
jsp页面获取不到java传递过来的httpSession值
如果您在 JSP 页面中无法获取 Java 传递的 HttpSession 值,可能有以下几个原因:
1. 您没有在 JSP 中正确地获取 HttpSession 值。请确保您已经正确地从 request 对象中获取了 HttpSession 值,例如:
```java
HttpSession session = request.getSession();
```
2. 您在 Java 中没有正确地设置 HttpSession 值。请确保您已经正确地设置了 HttpSession 值,例如:
```java
HttpSession session = request.getSession();
session.setAttribute("key", "value");
```
3. 您的 HttpSession 值可能已经过期或已被删除。请确保您在 JSP 中尝试获取 HttpSession 值的时候,它确实存在并且没有被删除。
4. 您的 JSP 页面可能没有包含正确的代码来获取 HttpSession 值。请确保您的 JSP 页面中包含正确的代码来获取 HttpSession 值,例如:
```java
<%
HttpSession session = request.getSession();
String value = (String)session.getAttribute("key");
%>
```
如果您仍然无法解决问题,请提供更多详细信息,以便我们更好地帮助您解决问题。
创建项目:SchoolProject001 表单界面使用JSP,名为SchoolForm001.jsp,控件名为:sname、nature、major、num、message, 控制器类SchoolServlet001.java,要求在Servlet中获取表单信息,其中sname(学校名)、nature(性质)、major(学科分类)、num(学生人数)和message(备注)。取值为String类型,num为double类型,跳转到SchoolResult001.jsp,并使用HttpSession会话传值。 表单获取页面,名为SchoolResult001jsp,使用HttpSession获取值(使用JSP内置对象和EL表达式两种方式)
好的,你想要创建一个名为 SchoolProject001 的项目,使用 JSP 实现表单界面,控制器类为 SchoolServlet001.java。具体要求为:
- 表单界面为 SchoolForm001.jsp,包含 5 个控件:sname、nature、major、num、message。
- Servlet 中需要获取表单信息,其中 sname(学校名)、nature(性质)、major(学科分类)、num(学生人数)和 message(备注)的取值为 String 类型,num 的取值为 double 类型。
- Servlet 处理完表单信息之后,需要跳转到 SchoolResult001.jsp 页面,并使用 HttpSession 会话传值。
- SchoolResult001.jsp 页面需要使用 HttpSession 获取表单信息,并使用 JSP 内置对象和 EL 表达式两种方式进行取值。
那么我们可以按照如下步骤进行操作。
1. 创建一个名为 SchoolProject001 的 Java Web 项目,导入 JSP、Servlet 相关的依赖包。
2. 在 WebContent 目录下创建 SchoolForm001.jsp 页面,实现表单界面的布局。
3. 在 src 目录下创建 SchoolServlet001.java 类,该类需要继承 HttpServlet 类,并实现 doGet() 和 doPost() 方法。在这两个方法中,可以通过 request.getParameter() 方法获取表单提交的参数,并将参数存储到 HttpSession 中。
4. 在 web.xml 文件中配置 Servlet 映射,将 SchoolServlet001 映射到 /school。
```xml
<servlet>
<servlet-name>SchoolServlet001</servlet-name>
<servlet-class>com.example.SchoolServlet001</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>SchoolServlet001</servlet-name>
<url-pattern>/school</url-pattern>
</servlet-mapping>
```
5. 在 SchoolForm001.jsp 页面中,设置表单的提交地址为 /school,并设置表单的 method 为 post。
6. 在 SchoolResult001.jsp 页面中,使用 HttpSession 获取表单信息,并使用 JSP 内置对象和 EL 表达式两种方式进行取值。
以上就是创建 SchoolProject001 项目的具体步骤。
阅读全文