线偶

线偶的IT笔记

Spring Websocket 原理

使用示例 例子来自于官网 1 2 3 4 5 6 7 8 9 10 11 12 13 14 @Configuration @EnableWebSocket public class WebSocketConfig implements WebSocketConfigurer { @Override public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) { registry.addHandler(myHandler(), "/myHandler"); } @Bean public WebSocketHandler myHandler() { return new MyHandler(); } } 说明: WebSocketConfigurer 配置 websocket。 WebSocketHandler 处

Spring 常用扩展点

在 spring 中,最常用的两种扩展就是 BeanFactoryPostProcessor 和 BeanPostProcessor, 当然还有其他的扩展,比如 ApplicationListener, SpringApplicationRunListener 等等。 BeanFactoryPostProcessor 源码位置: org.springframework.beans.factory.config.BeanFactoryPostProcessor 1 2 3 4 5 6 @FunctionalInterface public interface BeanFactoryPostProcessor { // 可以用 beanFactory 来修改 beanDefinition, 注册 singletonBean void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException; }

适配多种 Servlet 容器

自动配置类 源码位置: org.springframework.boot.autoconfigure.web.servlet.ServletWebServerFactoryAutoConfiguration 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 // 导入 tomcat,jetty,undertow 的配置 @Import({ ServletWebServerFactoryAutoConfiguration.BeanPostProcessorsRegistrar.class, ServletWebServerFactoryConfiguration.EmbeddedTomcat.class, ServletWebServerFactoryConfiguration.EmbeddedJetty.class, ServletWebServerFactoryConfiguration.EmbeddedUndertow.class }) public class ServletWebServerFactoryAutoConfiguration { @Bean public ServletWebServerFactoryCustomizer servletWebServerFactoryCustomizer(ServerProperties

Spring Boot 启动流程

spring boot 启动流程必须懂。 启动类示例: 1 2 3 4 5 6 7 8 @SpringBootApplication public class HiApplication { public static void main(String[] args) { // 先执行 SpringApplication 的构造方法,然后执行 run 方法 SpringApplication.run(HiApplication.class, args); } } SpringApplication#run 源码位置: org.springframework.boot.SpringApplication#SpringApplication 1 2 3 4 5 6
0%