• 手机版

    扫码体验手机版

  • 微信公众号

    扫码关注公众号

国内首家协议开发

软芯音视解码保护平台

在线
客服

发布
需求

在线
聊天

天盟
APP

天盟APP下载

关注
微信

微信扫一扫访问
顶部

使用listener,实现在线用户列表时,显示第一次输入的用户,,(代码多,但是



代码虽多,一目了然

先是实体User


package entity;

public class User {
   
    private String username;
    private String password;
    public User(String username, String password) {
        super();
        this.username = username;
        this.password = password;
    }
    public User() {
        super();
    }
    public String getUsername() {
        return username;
    }
    public void setUsername(String username) {
        this.username = username;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
   
   
   
}
-----------------------------------------------------------------------------------------
OnLineUserListener监听器内容
package listener;

import java.util.HashSet;
import java.util.Set;

import javax.servlet.ServletContext;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpSessionAttributeListener;
import javax.servlet.http.HttpSessionBindingEvent;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;

import entity.User;

public class OnLineUserListener implements ServletContextListener,
        HttpSessionAttributeListener, HttpSessionListener {
        private ServletContext application;
       public void sessionCreated(HttpSessionEvent arg0) {
        

    }

    public void sessionDestroyed(HttpSessionEvent arg0) {
    HttpSession session=arg0.getSession();
    User logoutUser=(User) session.getAttribute("user");
    Set logOutUser=(Set)application.getAttribute("onLineUsers");

    }

    public void attributeAdded(HttpSessionBindingEvent arg0) {
        HttpSession session=arg0.getSession();
        User newuser=(User)session.getAttribute("user");
        Set onLineUsers=(Set)application.getAttribute("onLineUsers");
        onLineUsers.add(newuser);

    }

    public void attributeRemoved(HttpSessionBindingEvent arg0) {
        User logOutUser=(User)arg0.getValue();
        Set onLineUsers=(Set)application.getAttribute("onLineUsers");
        onLineUsers.remove(logOutUser);

    }

    public void attributeReplaced(HttpSessionBindingEvent arg0) {
        // TODO Auto-generated method stub

    }

    public void contextDestroyed(ServletContextEvent arg0) {
        // TODO Auto-generated method stub

    }

    public void contextInitialized(ServletContextEvent arg0) {
    Set onLineUsers=new HashSet();// 创建一个用于存放onLineUsers对象的set集合对象
    application=arg0.getServletContext();
    application.setAttribute("onLineUsers", onLineUsers);
   

    }

}

-----------------------------------------------
login.jsp内容







  
   
   
    My JSP 'index.jsp' starting page
   
   
        
   
   
   
  
  
  
   
           账户:

          密码:

   
   
   
  

-----------------------------------------------------
servler
package servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import entity.User;

public class LoginServlet extends HttpServlet {

    /**
     * Constructor of the object.
     */
    public LoginServlet() {
        super();
    }

    /**
     * Destruction of the servlet.

     */
    public void destroy() {
        super.destroy(); // Just puts "destroy" string in log
        // Put your code here
    }

    /**
     * The doGet method of the servlet.

     *
     * This method is called when a form has its tag value method equals to get.
     *
     * @param request the request send by the client to the server
     * @param response the response send by the server to the client
     * @throws ServletException if an error occurred
     * @throws IOException if an error occurred
     */
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        String username=request.getParameter("username");//userpwd
        String userpwd=request.getParameter("userpwd");
        request.getSession().setAttribute("user",new User(username,userpwd));
        System.out.println("username"+username);
        request.getRequestDispatcher("show.jsp").forward(request, response);
        out.flush();
        out.close();
        
        
    }

    /**
     * The doPost method of the servlet.

     *
     * This method is called when a form has its tag value method equals to post.
     *
     * @param request the request send by the client to the server
     * @param response the response send by the server to the client
     * @throws ServletException if an error occurred
     * @throws IOException if an error occurred
     */
    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        this.doGet(request, response);
    }

    /**
     * Initialization of the servlet.

     *
     * @throws ServletException if an error occurs
     */
    public void init() throws ServletException {
        // Put your code here
    }

}

----------------------------------------------web.xml



  listener.OnLineUserListener


  This is the description of my J2EE component
  This is the display name of my J2EE component
  LoginServlet
  servlet.LoginServlet


  LoginServlet
  /LoginServlet


  index.jsp


  BASIC




-------------------------------------------show.jsp






  
   
   
    My JSP 'index.jsp' starting page
   
   
  
  
  
  
   
        [tr]
        
        [td]${onLineUsers.username }
        [/td]
        [td]${onLineUsers.password }
        [/td]
        [/tr]

免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。

版权声明:作者保留权利,不代表天盟立场。

使用道具 举报

发新帖

发布任务需求已有1031167位用户正在使用天盟网服务

发布分类: *
任务预算: *
需求内容: *
手机号码: *
任务商家报价为
  • 预算价 :
  • 成交价 :
  • 完工期 :
  • 质保期 :

* 最终任务项目以服务商报价、双方协商为准!