第一种

web.xml (截取的需要转换的)

当拦截到 /socke t时执行该servlet

    <servlet>
<servlet-name>websocket</servlet-name>
<servlet-class>org.ldd.ssm.hangyu.socket.MyWebSocketServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>websocket</servlet-name>
<url-pattern>/socket</url-pattern>
</servlet-mapping>

转为springboot配置为 红色部分

@SpringBootApplication
@MapperScan("org.ldd.ssm.hangyu.mapper")
//@ServletComponentScan
public class MyspringbootApplication extends SpringBootServletInitializer{ public static ApplicationContext cs; @Bean
public ServletRegistrationBean servletRegistrationBean() {
return new ServletRegistrationBean(new MyWebSocketServlet(), "/socket");
} @Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(MyspringbootApplication.class);
} public static void main(String[] args) {
cs=SpringApplication.run(MyspringbootApplication.class, args);
}
}

或者在该servlet上加上红色的注解  但同时也要在 启动类上 加上注解 @ServletComponentScan 如上段代码中注释的一样

@SuppressWarnings("deprecation")
@WebServlet(name="myWebSocketServlet",urlPatterns="/socket") 
public class MyWebSocketServlet extends WebSocketServlet {
  private static final long serialVersionUID = -6488889268352650321L;
protected StreamInbound createWebSocketInbound(String name,HttpServletRequest request) {
String parameter = request.getParameter("name");
return new MyMessageInbound(parameter);
}
}

第二种

首先解释一下:

  1. load-on-startup标记容器是否在启动的时候实例化并调用其init()方法的优先级

  2. 它的值表示  servlet应该被载入的顺序。

  3. 当值为0或者大于0时,表示容器在应用启动时就加载并初始化这个servlet。

  4. .如果值小于0或未指定时,则表示只有在第一次请求的容器才在该servlet调用初始化函数。

  5. 正值越小,servlet的优先级越高,应用启动时就越先加载。

  6. 值相同时,容器就会自己选择顺序来加载。

web.xml(截取)

    <servlet>
<servlet-name>initServlet</servlet-name>
<servlet-class>org.ldd.ssm.hangyu.socket.InitServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>

第一种servlet 都有指定的路径然而这个启动时加载的不同 当时看了好久的方法都没找到。

找了好久终于找到一篇文章:https://blog.csdn.net/billluffy/article/details/72825753

我整理在下面:

在Spring boot项目的实际开发中,我们有时需要项目服务启动时加载一些数据或预先完成某些动作。为了解决这样的问题,Spring boot 为我们提供了一个方法:通过实现接口 CommandLineRunner 来实现这样的需求。

import org.springframework.boot.CommandLineRunner;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component; @Component
@Order(value=1)//代表启动时加载的顺序
public class MyStartupRunner implements CommandLineRunner
{
InitServlet initServlet=new InitServlet();
@Override
public void run(String... args) throws Exception{
initServlet.init(initServlet.getServletConfig());
}
}
  

在springBoot中配置web.xml中配置的servlet的更多相关文章

  1. SSM搭配中的web.xml的配置信息

    最近一段时间在自己学着搭建SSM框架的项目,其实这个项目自由自己不断尝试,不断失败,才能印象更深刻. 下面就说一下在项目中的web.xml的相关配置信息: <?xml version=" ...

  2. struts2 在 Action 或 Interceptor 中获取 web.xml 中配置的 <context-param> 参数 (这是我的第一篇博文,哈哈。)

    最近为了改一个问题,想加一个控制开关,就在web.xml 中配置了一个 <context-param> 参数,并在 Action 或 Interceptor 中获取参数值. 1.在 web ...

  3. SpringMVC中在web.xml中添加中文过滤器的写法

    <filter> <filter-name>characterEncodingFilter</filter-name> <filter-class>or ...

  4. 解决servlet在web.xml中的路径跳转问题

    <?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" ...

  5. Web.xml中Filter过滤器标签几个说明

    在研究liferay框架中看到Web.xml中加入了过滤器的标签,可以根据页面提交的URL地址进行过滤,发现有几个新标签没用过,下面就介绍以下几个过滤器的标签用法: <!-- 定义Filter ...

  6. web.xml中Filter过滤器标签说明

    原文:http://www.cnblogs.com/edwardlauxh/archive/2010/03/11/1918618.html 在研究liferay框架中看到Web.xml中加入了过滤器的 ...

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

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

  8. servlet中用注解的方式读取web.xml中的配置信息

    在学习servletContext的时候,我们知道了可以在web.xml中通过<context-param>标签来定义全局的属性(所有servlet都能读取的信息),并在servlet中通 ...

  9. JavaWeb工程中web.xml基本配置

    一.理论准备 先说下我记得xml规则,必须有且只有一个根节点,大小写敏感,标签不嵌套,必须配对. web.xml是不是必须的呢?不是的,只要你不用到里面的配置信息就好了,不过在大型web工程下使用该文 ...

随机推荐

  1. Simple PWM to Analog Circuit (0-10vdc)

    i just finished this simple circuit and am very satisfied with the result. The output is very stable ...

  2. Windows2003 内核级进程隐藏、侦测技术

    论文关键字: 内核 拦截 活动进程链表 系统服务派遣表 线程调度链 驱动程序简介    论文摘要:信息对抗是目前计算机发展的一个重要的方向,为了更好的防御,必须去深入的了解敌人进攻的招式.信息对抗促使 ...

  3. iOS 6 新的快捷初始化写法

    转:http://www.2cto.com/kf/201408/328974.html 下列简化写法是IOS6.0以后的新写法 NSNumber //简化前的写法: NSNumber *value1; ...

  4. [leetcode]Minimum Window Substring @ Python

    原题地址:https://oj.leetcode.com/problems/minimum-window-substring/ 题意: Given a string S and a string T, ...

  5. Android四大组件应用系列——Activity与Service交互实现APK下载

    Servic与Activity相比它没有界面,主要是在后台执行一些任务,Service有两种启动方法startService()和bindService(),startService方式Service ...

  6. python 获取前一天或前N天的日期

    简单实现 import datetime # 获取前1天或N天的日期,beforeOfDay=1:前1天:beforeOfDay=N:前N天 def getdate(self,beforeOfDay) ...

  7. [Canvas]Bombman v1.00

    爆破小人Canvas版,请点此下载,并用浏览器打开试玩. 图例: 源码: <!DOCTYPE html> <html lang="utf-8"> <m ...

  8. 使用JavaCV播放视频、摄像头、人脸识别

    一.导入Maven依赖包 <dependencies> <!-- https://mvnrepository.com/artifact/org.bytedeco/javacv-pla ...

  9. 鼠标滑过table时修改表格行的背景颜色

    方法一: #customers tr:hover { background-color: #f00; } 方法二: <tr onmouseover="style.backgroundC ...

  10. 如何查看memcache的性能

    memcache的运行状态可以方便的用 stats 命令显示.首先用telnet 127.0.0.1 11211这样的命令连接上memcache,然后直接输入stats就可以得到当前memcache的 ...