在springBoot中配置web.xml中配置的servlet
第一种
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; @Beanpublic ServletRegistrationBean servletRegistrationBean() {return new ServletRegistrationBean(new MyWebSocketServlet(), "/socket");}@Overrideprotected 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);} }
第二种
首先解释一下:
load-on-startup标记容器是否在启动的时候实例化并调用其init()方法的优先级。
它的值表示 servlet应该被载入的顺序。
当值为0或者大于0时,表示容器在应用启动时就加载并初始化这个servlet。
.如果值小于0或未指定时,则表示只有在第一次请求的容器才在该servlet调用初始化函数。
正值越小,servlet的优先级越高,应用启动时就越先加载。
值相同时,容器就会自己选择顺序来加载。
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());} }
转载于:https://www.cnblogs.com/wangxiaomei/p/8885470.html
在springBoot中配置web.xml中配置的servlet相关推荐
- 关于Servlet的两种配置Web.xml文件配置或者使用(@WebServlet(name = ,urlPatterns = ))配置问题——WebServlet注解
在Servlet2.5规范之前,Java Web应用的绝大部分组件都通过web.xml文件来配置管理. Servlet3.0规范可通过Annotation来配置管理Web组件,因此web.xml文件可 ...
- 深入理解web.xml中配置/和/*的区别
在用SpringMVC进行web开发的时候,如果将DispathcerServlet对外访问的虚拟路径配置成/时,需要在Spring的配置文件中配置<mvc:default-servlet-ha ...
- Jsp在Web.xml中的配置
以下列出web.xml经常使用的标签元素及这些标签元素的功能: 1.指定欢迎页面.比如: <welcome-file-list> <welcome-file-list> < ...
- jsp到java xml配置,JSP中web配置:web.xml
# re: JSP中web配置:web.xml 2007-07-02 12:24 和田雨 - http://java.sun.com/xml/ns/j2ee" xmlns:j2ee=&quo ...
- web.xml中的所有配置,Listener和Filter的加载顺序
web.xml 中的listener. filter.servlet 加载顺序及其详解 在项目中总会遇到一些关于加载的优先级问题,近期也同样遇到过类似的,所以自己查找资料总结了下,下面有些是转载其他人 ...
- web.xml中配置web监听器
web.xml中配置web监听器 在web.xml配置监听器,格式如下: <listener><listener-class>类全名</listener-class> ...
- 服务器启动时Webapp的web.xml中配置的加载顺序
一 1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个Ser ...
- Spring中,applicationContext.xml 配置文件在web.xml中的配置详解
Spring中,applicationContext.xml 配置文件在web.xml中的配置详解 2016年10月04日 15:22:26 阅读数:7936 转自http://www.cnblogs ...
- 在配置文件web.xml中配置Struts2的启动信息
在配置文件web.xml中配置Struts2的启动信息: <?xml version="1.0" encoding="UTF-8"?> <we ...
最新文章
- axi dma 寄存器配置_FPGA Xilinx Zynq 系列(三十二)AXI 接口
- 谁是真正的深度学习?英特尔高管与AI大神再“论剑”
- IT人保持健康的必备法宝
- java基础 - file类(递归遍历目录)
- PHP获取当前域名$_SERVER['HTTP_HOST']和$_SERVER['SERVER_NAME']的区别
- vue切换路由页面数据缓存_Vue-Router实现前端页面缓存
- JPA规范的主要内容
- gmake与make的区别
- python3.12答案_编程常见问题
- qs.js 更好的处理url参数
- 《Linux菜鸟入门2》LVM
- 帆软复选框选中并打印(按某种格式打印)数据分析、报填可用
- Python绘制分形树(一)
- Linux基础(八)服务器RAID及配置
- Python井字棋游戏开发带实验报告
- ERP项目实施技术要点分析
- Qt编写的复杂象棋程序 chessbroad.cpp 错误比较多
- activiti工作流获取出线(outgoingTransitions)
- 琢石成器――windows环境下32位汇编语言程序设计(第三版)笔记
- 第四章:你造吗?CMOS传感器的构成与关键
热门文章
- java集群session共享_分布式/集群下session共享方案汇总
- 『数据库』这篇数据库的文章真没人看--数据库完整性
- 『ACM-算法-二分法』信息竞赛进阶指南--二分法
- 机器学习--最基础的最常用的聚类算法
- hdu2544最短路
- kafka自动提交offset失败:Auto offset commit failed
- 如何在ubuntu 14.04系统下开启nfs网络文件系统
- 【卷积核设计】Scaling Up Your Kernels to 31x31: Revisiting Large Kernel Design in CNNs
- profiler分析器——R语言
- 美国0封伊朗已经6天了,伊石油出口真归零了吗?