我可以在脚本中设置会话属性,但是当我尝试在Java类中设置会话属性时,它显示错误,如“无法解析会话”。 那么如何在Java中设置会话?
<%String username = (String)request.getAttribute("un");
session.setAttribute("UserName", username);%>
所谓Java类,我理解为Servlet类,因为在任意的Java类中设置会话属性是没有意义的。您可以在servlet的doGet/doPost方法中执行以下操作:
public void doGet(HttpServletRequest request, HttpServletResponse response) {
HttpSession session = request.getSession();
String username = (String)request.getAttribute("un");
session.setAttribute("UserName", username);
}
HttpSession s=request.getSession()
s.setAttribute("name","value");
ActionContext ctx= ActionContext.getContext();
Map m=ctx.getSession();
m.put("name", value);
试试这个。
<%@page language="java" session="true" %>
我试图理解你的观点。希望这有所帮助......
if (session.isNew()){
title = "Welcome to my website";
session.setAttribute(userIDKey, userID);
package Jclasspackage
public class Jclass {
public String uname ;
/**
* @return the uname
*/
public String getUname() {
return uname;
}
/**
* @param uname the uname to set
*/
public void setUname(String uname) {
this.uname = uname;
}
public Jclass() {
this.uname = null;
}
public static void main(String[] args) {
}
}
<%@ page language="java"
import="java.util.*,java.io.*"
pageEncoding="ISO-8859-1"%>
<jsp:directive.page import="Jclasspackage.Jclass.java" />
<% Jclass jc = new Jclass();
String username = (String)request.getAttribute("un")
jc.setUname(username);
%>
通过在类中使用"this.username",您可以访问Java文件中的用户名。