想法是正确的。
主要是通过session.setAttribute("username",user)
session.getAttribute("username")
这两个语句来处理啦。

解决方案 »

  1.   

    import javax.servlet.*;
    import javax.servlet.http.*;import java.io.*;
    import java.util.*;
    /**
     * A servlet for login
     *
     * @author <a href="mailto:[email protected]">Luoxiao</a>
     * @version 1.0
     */
    public class LoginServlet extends HttpServlet {
      private static final String CONTENT_TYPE = "text/html; charset=GBK";
      //Initialize global variables
      public void init() throws ServletException {
      }
      //Process the HTTP Get request
      public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType(CONTENT_TYPE);
        PrintWriter out = response.getWriter();
        try
        {
          HttpSession session=request.getSession();
          
          String username=request.getParameter("username");
          String password=request.getParameter("password");
          /*
           数据库验证username和password
              */
          session.setAttribute("user",userinfo);//userinfo是从数据库取得的用户信息所存放到的类的对象
          response.sendRedirect("logined.jsp");//跳转到登陆以后的jsp    }catch (Exception e)
        {
          e.printStackTrace();
        }  }
      //Clean up resources
      public void destroy() {
      }
    }
      

  2.   

    然后你再在logined.jsp里面判断是否存在这个session,如果不存在那么就返回到前一页
      

  3.   

    AlanLuo_2002(耶罗) 的方法赞同!楼主的想法很好,
    但是,楼主还必须考虑权限的分配问题!不可能让登陆的所有用户都用相同的权限!
      

  4.   

    大家好,我也是JSP和SERVLET的初学者,请问SESSION的时间如何确定呀?
      

  5.   

    呵呵,方法有很多。
    也可以把用户数据库信息写到一个JSP文件中,以后的文件中都include。Session的时间设置应该放在服务的初开化设定里面,例如Resin中是放在resin.conf中的。
    我是菜鸟,其他的Web服务没有用过,不敢说。呵呵。
      

  6.   

    if (request.getQueryString()==null)
      {
        session.setAttribute("LoginBack",request.getRequestURL());
      }
      else
      {
        session.setAttribute("LoginBack",request.getRequestURL()+"?"+request.getQueryString());
      }
        String StrLogined="";
        String Logining="";
        if (session.getAttribute("Logined")!=null)
        {
          StrLogined=session.getAttribute("Logined")+"";
        }
        if (session.getAttribute("Logining")!=null)
        {
          Logining=session.getAttribute("Logining")+"";
        }
        if (!StrLogined.equals("true"))
        {
          if (!Logining.equals("true"))
          {
          response.sendRedirect("Login.jsp");
          }
      }
    将上述代码写入一个文件,每个页面都include它,
    在Login.jsp里边做判断如果登录成功则
    session.setAttribute("Logined","true");
    response.sendRedirect(session.getAttribute("LoginBack")+"");
      

  7.   

    其实最好还是认真学习一下安全验证机制,毕竟这才是比较标准的验证方式。
    如果理解了,实现非常简单,安全性很好,还可以控制用户权限。
    如果只是用session的变量来判断,岂不是每张页面都要判断,太繁琐了。