利用ServletContextListener的监听器在服务器启动时加载,去动态注册servlet、filter、listener
package com._14_dynamicRegiste;
import javax.servlet.*;
import javax.servlet.annotation.WebListener;
import java.util.EnumSet;
import java.util.Set;
@WebListener
public class MyServletContext implements ServletContextListener {
@Override
public void contextInitialized(ServletContextEvent sce) {
//获取ServletContext
ServletContext sc = sce.getServletContext();
//动态注册Servlet
ServletRegistration.Dynamic dynamic = sc.addServlet( "Some-Servlet", "com._14_dynamicRegiste.Some" );
//为Servlet添加动态参数
dynamic.setInitParameter("company","5101");
// 为Servlet指定url-pattern
dynamic.addMapping( "/some" );
//动态注册Filter
//下面的两个变量的值一般是从配置文件读取来的
String filterName = "Some-Filter";
String filterClassName = "com._14_dynamicRegiste.filte