日期:2014-05-18  浏览次数:20697 次

如何获取用户登陆的信息呢?
在jsp中不用session的话还有没有其他方法获得用户的登陆信息呢。


------解决方案--------------------
还有cookie
------解决方案--------------------
数据库
------解决方案--------------------
public Collection getMessage()throws Exception
{
Collection ret=new ArrayList();
try
{
Statement stm=con.createStatement();
ResultSet result=stm.executeQuery( "select count(*) from message ");
int message_count=0;
if(result.next())
{
message_count=result.getInt(1);
result.close();
}
if(message_count> 0)
{
result=stm.executeQuery( "select * from message order by time desc ");

while(result.next())
{
String title=result.getString( "title ");
String name=result.getString( "name ");
String mail=result.getString( "mail ");
String content=result.getString( "content ");
java.sql.Date date=result.getDate( "time ");
MessageVO message=new MessageVO();
message.setName(name);
message.setTitle(title);
message.setContent(content);
message.setDate(date);
message.setEmail(mail);
ret.add(message);
}
result.close();
stm.close();
}

con.close();

}
catch(Exception e)
{
e.printStackTrace();
throw e;
}
return ret;
}


JSP中获得
<%
int message_count=0;
Collection messages=messageBean.getMessage();
Iterator it=messages.iterator();
while(it.hasNext())
{
MessageVO message=(MessageVO)it.next();
%>

就是保存在BEAN里面 然后使用迭代方法读出
------解决方案--------------------
看范围,如果你的用户信息是所有页面都用:session,cookies,database,文本里面都可以,

------解决方案--------------------
用户登陆时如果成功则获取用户的所有信息
然后放在一个OnlineUser类里。这个类里面存放的都是对象

这样。只要服务哭不重启,什么时候拿都行。也不用放session中