我只是通过更改URL将数据从浏览器传递到HomeController.java
,
我的HomeController.java
如下,
package com.example.demo;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class HomeController {
@RequestMapping("home")
public String home(HttpServletRequest req) {
HttpSession session=req.getSession();
String name=req.getParameter("name");
//Fetch data comming from client
System.out.println("hi "+name);
session.setAttribute(name, name);
return "home";
}
}
我正在使用session
对象传递会话属性,但是应该如何在我的JSP文件(home.jsp
)中获取它。
我的home.jsp
看起来像:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
Welcome ${name}
</body>
</html>
我想在home.jsp
文件中编写Java代码,并使用会话对象而不是expression language
格式。谁能告诉我如何使用该会话对象?
谢谢!
答案 0 :(得分:4)
要直接回答您的问题,您可以像下面这样从会话对象中调用变量:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
Welcome <%=session.getAttribute("name")%>
</body>
</html>
name
是存储在会话中的对象的名称。
PS:使用记录器代替System.out