web.xml中添加要启动的类

<listener>

<listener-class>server.NettyServer</listener-class>

</listener>

继承ServletContextListener接口 实现方法 在contextInitialized方法中添加要运行的类

new Thread()是为了防止线程阻塞tomcat启动

public class NettyServer implements ServletContextListener{

@Override

public void contextDestroyed(ServletContextEvent arg0) {

// TODO Auto-generated method stub

}

@Override

public void contextInitialized(ServletContextEvent arg0) {

System.err.println("nettyListener Startup!");

new Thread(){

@Override

public void run(){

try {

new start(9000).run();//改成需要加载的方法

} catch (Exception e) {

e.printStackTrace();

}

}

}.start();

System.err.println("nettyListener end!");

}

}

不要在tomcat主线程启动 那样会锁死后面的操作  可以 new Thread() {  启动netty服务 }.start()

通过web.xml监听器启动main方法的更多相关文章

  1. web.xml 监听器

    一.作用 Listener就是在application,session,request三个对象创建.销毁或者往其中添加修改删除属性时自动执行代码的功能组件. Listener是Servlet的监听器, ...

  2. web.xml的启动顺序

    1. context-param 2. Listener 3. Filter 4. servlet <?xml version="1.0" encoding="UT ...

  3. DispatcherServlet和ContextLoaderListener,还有spring+servlet3.0 无web.xml启动问题

    上篇提到: 关于spring +springmvc中两个spring应用上下文(DispatcherServlet和ContextLoaderListener)的问题,挺让人迷糊的. 他们都是加载Be ...

  4. web.xml 简记

    web.xml (tomcat启动时读取的配置文件) 首页配置 <welcome-file-list>:index.jsp servlet配置(<servlet>和<se ...

  5. SpringBoot源码篇:深度分析SpringBoot如何省去web.xml

    一.前言 从本博文开始,正式开启Spring及SpringBoot源码分析之旅.这可能是一个漫长的过程,因为本人之前阅读源码都是很片面的,对Spring源码没有一个系统的认识.从本文开始我会持续更新, ...

  6. Maven系列--web.xml 配置详解

    一 .web.xml介绍 启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 紧接着,容 ...

  7. SpringBoot源码篇:Spring5内置tomcat实现code-based的web.xml实现

    一.简介 上篇文章讲了SpingBoot诞生的历史背景和技术演进背景,并通过源码说明了SpringBoot是如何实现零配置的包括如何省去web.xml配置的原理.本文接上一篇文章,通过demo演示Sp ...

  8. web.xml配置文件详细解读

    对于一个J2EE应用的开发者,或者叫java web后台的开发者来说.经常会和web.xml打交道,偶尔用到几个标签不知道啥意思.然后就度娘一下,久而久之虽然大概知道web.xml的基本使用方法,但是 ...

  9. web.xml 注册中央调度器Url-pattern 要注意的地方(五)

    一.url-pattern 里面不能用/*     二.最好不要写成杠,如果使用“/”,中央调度器会把静态资源拦截掉,比如图片会不显示,或者css不能用.   但,如果地址栏传参数的时候比如是/del ...

随机推荐

  1. 深入理解Vuex 模块化(module)

    todo https://www.jb51.net/article/124618.htm

  2. webpack3升级webpack4

    cnpm i webpck@4 webpack-cli -D cnpm i webpack-cli -D cnpm update npm WARN deprecated extract-text-we ...

  3. Class constructor FileManager cannot be invoked without 'new' in undefined (line undefined, column undefined)

    解决办法: 1.删除package.json属性devDependencies的 less 和 less-loader ; 2.重新安装 npm i less less-loader --save-d ...

  4. 一个困扰很久的异常—java.lang.NoClassDefFoundError: com/google/gson/Gson

    描述: 这个异常是在运行时抛出的,编译的时候没有任何问题,而且异常信息非常少,只有一句:java.lang.NoClassDefFoundError: com/google/gson/Gson 解决: ...

  5. 教材代码完成情况测试P171(课上测试)

    一.任务详情 0 在Ubuntu中用自己的有位学号建一个文件,教材p171 Example7_7 增加一个类DangerException2, 显示"超轻"异常,超轻的阈值minC ...

  6. ShiroFilterFactoryBean 找不到的原因

    是因为参考的那篇shiro的博客,没有引入这个依赖的原因 <dependency> <groupId>org.apache.shiro</groupId> < ...

  7. SpringBoot中application.yml基本配置详情

    把原有的application.properties删掉.然后 maven -X clean install,或者通过Maven Project双击clean和install(1)端口服务配置 #端口 ...

  8. electron之API学习

    学习一个新框架或者技术,最深入最全面的方法就是通过官方API,例如我们学习electron: 例如我们需要学习electron的BrowserWindow对象的使用,以及在创建她时我们可以配置的参数: ...

  9. MYSQL5.7二进制包的安装

    mysql5.7 二进制包安装1. 下载包 wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.12-linux-glibc2.5-x86_6 ...

  10. 之前写的页面导出Excel表格

    废话不多说,直接上代码 <%@ page language="java" import="java.util.*" pageEncoding=" ...