| package com.dy.common.webListener; | 
|   | 
| import com.dy.common.util.IDLongGenerator; | 
| import com.dy.common.util.NumUtil; | 
| import jakarta.servlet.ServletContext; | 
| import jakarta.servlet.ServletContextEvent; | 
| import jakarta.servlet.ServletContextListener; | 
| import lombok.extern.slf4j.Slf4j; | 
|   | 
| @Slf4j | 
| public class GenerateIdSetSuffixListener implements ServletContextListener { | 
|   | 
|     // | 
|     public static final String IdSuffix = "idSuffix" ; | 
|   | 
|     @Override | 
|     public void contextInitialized(ServletContextEvent event) { | 
|         ServletContextListener.super.contextInitialized(event); | 
|         ServletContext con = event.getServletContext(); | 
|         this.init(con); | 
|     } | 
|   | 
|     @Override | 
|     public void contextDestroyed(ServletContextEvent event) { | 
|         ServletContextListener.super.contextDestroyed(event); | 
|     } | 
|   | 
|   | 
|     /** | 
|      * 解析系统配置 | 
|      */ | 
|     private void init(ServletContext con){ | 
|         try { | 
|             String idSuffix = con.getInitParameter(IdSuffix); | 
|             if(idSuffix == null || idSuffix.trim().equals("")){ | 
|                 throw new Exception("未配置ID后缀") ; | 
|             }else{ | 
|                 if(!NumUtil.isPlusIntNumber(idSuffix)){ | 
|                     throw new Exception("配置ID后缀格式不正确") ; | 
|                 }else{ | 
|                     IDLongGenerator.setSuffix(Integer.parseInt(idSuffix)); | 
|                 } | 
|             } | 
|         } catch (Exception e) { | 
|             log.error("系统启动时,初始化ID后缀出错 !", e); | 
|         } | 
|     } | 
| } |