springboot实现在线用户统计

      Spring Boot是由Pivotal团队供给的全新框架,其设计目标是用来简化新Spring应用的初始搭建以及开辟过程。该框架利用了特定的体例来进行设置装备摆设,从而使开辟人员不再需要界说样板化的设置装备摆设。经由过程这种体例,Spring Boot致力于在蓬勃成长的快速应用开辟范畴(rapid application development)当作为带领者。

工具/原料

  • 电脑
  • intellij IDEA

方式/步骤

  1. 1

    第一步调:建立一个springboot的项目(也可以建立一个简答的java项目)。

    1、 打开建立页面 选择File-new-project..

    2、选择建立的项目为spring initializr 进入springboot项目建立步调(也可以选择类型java,建立一个通俗java项目)

    3、输入项目名字,选择依靠web(按照项目需求选择,此次需要),选择存放目次-完当作(Finish)

  2. 2

    第二步调:编写HttpSessionLisener监听器。

    1、新建类UserStatisticsListener实现javax.servlet.http.HttpSessionListener监听器

    2、重写sessionCreated和sessionDestroyed方式,声明用户数目变量。具体代码如下所示:

    import javax.servlet.annotation.WebListener;import javax.servlet.http.HttpSessionEvent;import javax.servlet.http.HttpSessionListener;@WebListenerpublic class UserStatisticsListener implements HttpSessionListener {    private static int count = 0;    @Override    public void sessionCreated(HttpSessionEvent se) {        System.out.println("建立session");        count ++;    }    @Override    public void sessionDestroyed(HttpSessionEvent se) {        System.out.println("销毁session");        count --;    }}

    3、 启动类ExcelimportApplication 添加@ServletComponentScan

    import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.boot.web.servlet.ServletComponentScan;@ServletComponentScan@SpringBootApplicationpublic class ExcelimportApplication {    public static void main(String[] args) {        SpringApplication.run(ExcelimportApplication.class, args);    }}

  3. 3

    第三步调:节制编写。

    新建UserStatisticsController 类

    1、后台模拟登录,返回当前登录人数,方式logUser。

    2、后台模拟刊出账号,返回当前登录人数,方式logOut。

    3、session超时主动销毁,也会挪用sessionDestroyed方式

    4、具体代码如下所示

    import com.example.excelimport.listener.UserStatisticsListener;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;@RestControllerpublic class UserStatisticsController {    @RequestMapping("/logUser")    public String logUser(HttpServletRequest request, HttpServletResponse response, User user){        request.getSession().setAttribute("name",request.getParameter("name"));        return request.getParameter("name")+"登录当作功!当前在线用户人数是:"+ UserStatisticsListener.count;    }    @RequestMapping("/logOut")    public String logOut(HttpServletRequest request, HttpServletResponse response){        request.getSession().invalidate();        return request.getParameter("name")+"登出当作功!当前在线用户人数是:"+UserStatisticsListener.count;    }}

  4. 4

    第四步调:测试功能。

    1、启动项目如图一所示。

    2、在第一个浏览器URL地址输入“张三”登录。

    3、在第二个浏览器URL地址中输入“李四”登录。

    4、在第一个浏览器地址栏中输入“张三”登出。

    测试当作功!

注重事项

  • 开辟情况 jdk 1.8 IDEA 2018.2.2 maven:apache-maven-3.5.4
  • 发表于 2019-04-25 20:01
  • 阅读 ( 267 )
  • 分类:其他类型

相关问题

0 条评论

请先 登录 后评论