zoukankan      html  css  js  c++  java
  • web-fragment模块化使用

    用eclipse右键new->other->web->web fragment project

    确定后修改dynamic web project name为你要输出到的项目,当然可以手动将项目打包成jar文件添加到另一个web项目的lib下,也是一样的。

    web fragment project:

    web-fragment.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <web-fragment id="WebFragment_ID" version="3.1" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-fragment_3_1.xsd">
    <display-name>myFragmentTest</display-name> 
     <name>myFragmentTest</name>
     
         <listener>
             <listener-class>com.listener.RequestListener</listener-class>
         </listener>
         

        <!-- 设置web服务器对这个xml文件的读取顺序,一般在有多个web-fragment的时候会进行配置 -->

        <ordering>
          <before><others/></before>
        </ordering>

         
      
     </web-fragment>

    requestListener.java

    这是一个请求监听器,每当你访问一个页面时就会触发

    package com.listener;
    
    import javax.servlet.ServletContext;
    import javax.servlet.ServletRequestEvent;
    import javax.servlet.ServletRequestListener;
    
    public class RequestListener implements ServletRequestListener {
    
        @Override
        public void requestDestroyed(ServletRequestEvent event) {
            System.out.println("请求结束!");
    
        }
    
        @Override
        public void requestInitialized(ServletRequestEvent event) {
            ServletContext application = event.getServletContext();
            Integer count = (Integer) application.getAttribute("count");
            if(null == count) {
                count = 0;
                application.setAttribute("count", count + 1);
            } else {
                application.setAttribute("count", count + 1);
            }
            
            System.out.println("请求的次数为:" + (count + 1));
    
        }
    
    }

    这就是另一个web项目

    打包成jar的requestListener被加到了lib下

    当web容器启动的时候会实例化这个jar包里定义的listener

    当你请求一个页面的时候就会调用listener里的方法。

  • 相关阅读:
    《基于大数据的高考志愿推荐系统的设计与实现》论文笔记(三)
    《高考志愿智能填报系统的设计与实现》论文笔记(二)
    一个简单但能考察C语言基础的题目
    C语言入坑指南-数组之谜
    八大排序算法
    vim学习
    C++/Python冒泡排序与选择排序算法详解
    Python查找最长回文暴力方法
    悬空指针与野指针
    二分查找
  • 原文地址:https://www.cnblogs.com/honger/p/5847504.html
Copyright © 2011-2022 走看看