zoukankan      html  css  js  c++  java
  • web项目继承ServletContainerInitializer进行访问HttpServlet(WebServlet)

    java使用web项目不需要加web.xml

    配置javax.servlet.ServletContainerInitializer

    1、在src目录创建META-INF,META-INF目录下创建services,在services目录下创建javax.servlet.ServletContainerInitializer文件

    2、配置引用接口ServletContainerInitializer

    创建类MyWebConfig
    package myWeb;
    
    import javax.servlet.ServletContainerInitializer;
    import javax.servlet.ServletContext;
    import javax.servlet.ServletException;
    import javax.servlet.annotation.HandlesTypes;
    import java.util.Set;
    
    @HandlesTypes(value = SpringWeb.class)
    public class MyWebConfig implements ServletContainerInitializer {
        @Override
        public void onStartup(Set<Class<?>> set, ServletContext servletContext) throws ServletException {
            System.out.println("sadsa");
            for (Class<?> aClass : set) {
                SpringWeb o = null;
                try {
                    o = (SpringWeb) aClass.newInstance();
                    o.config();
                } catch (InstantiationException e) {
                    e.printStackTrace();
                } catch (IllegalAccessException e) {
                    e.printStackTrace();
                }
            }
        }
    }
    View Code

    3、接口

    package myWeb;
    
    public interface SpringWeb {
        void config();
    }

    4、实现类

    package myWeb;
    
    public class SpringWebInitializer implements SpringWeb {
        //配置
        @Override
        public void config() {
            System.out.println("初始化");
        }
    }

    5、访问地址HttpServlet

    @WebServlet("/asd")
    public class ServletWeb extends HttpServlet {
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            System.out.println("Asdds");
        }
    }

    6、tomcat测试:

     

    demo:https://github.com/weibanggang/serviceWebConfig

  • 相关阅读:
    微信小程序开发入门(二)
    微信小程序开发入门(一)
    django入门与实践(续)
    django入门与实践(开)
    Python六剑客
    python入门(二十讲):爬虫
    python入门(十九讲):多进程
    ES6箭头函数
    ES6
    数据库常用命令
  • 原文地址:https://www.cnblogs.com/weibanggang/p/10157030.html
Copyright © 2011-2022 走看看