Spring boot切换Servlet容器 切换Servlet容器Spring boot默认配置Tomcat作为Servlet容器 引入web模块,默认使用嵌入式的Tomcat 可以切换Jetty、Undertow默认配置 Pom文件,查看依赖关系默认使用Tomcat 因为,Web引入了Tomcat的启动器切换JettyPom文件,排除Tomcat启动器依赖 在依赖关系,右键可以排除依赖<!-...
Spring boot配置Servlet容器 配置Servlet容器Spring boot默认使用Tomcat,作为Servlet容器 也支持Jetty、Undertow作为Servlet容器Jetty适合开发长连接应用 长连接,表示一直进行点对点连接比如,Web聊天应用 聊天时,需要一直架起一个点对点连接Undertow是一个高性能,非阻塞的Servlet容器 并发性能非常好,但是,不支持JSP页面...
Spring boot注册三大组件 注册三大组件Spring boot 以jar包的方式 使用嵌入式的Tomcat启动Web应用 没有Web应用目录结构,没有web.xml文件Web应用 是一个Web应用的目录结构 存在目录文件src/main/webapp/WEB-INF/web.xml 可以把三大组件,注册在web.xml中Spring boot 提供了三大组件,注册方式注册Servlet,使用Se...
Spring boot自动注册DispatcherServlet DispatcherServletSpringBoot自动配置SpringMVC的时候 自动注册SpringMVC的前端控制器DIspatcherServletDispatcherServletAutoConfigurationServletRegistrationBean向容器中,注入DIspatcherServlet New一个ServletRegistrati...
Spring boot修改Servlet配置 配置文件通过配置文件,可以修改Servlet配置 默认使用Tomcat,作为Servlet容器Application.properties 绑定方式Server.prot属性 Ctrl+点击ServerProperties 绑定和server相关的配置这里面的属性,都是对服务器的设置 包括,端口号、访问路径、Session设置、连接超时时间 To...
Spring boot嵌入式Servlet容器定制器 修改Servlet配置可以通过配置文件修改 也可以编写一个嵌入式Servlet容器定制器EmbeddedServletContainerCustomizer 在自定义配置中,添加组件EmbeddedServletContainerCustomizer 是一个接口,接口里只有一个方法实现这个方法 配置嵌入式的Servlet容器定制嵌入式Servlet容器的相关规...
Spring boot配置嵌入式Servlet容器 Servlet容器项目,打成war包,放在Tomcat启动 Tomcat就是一个Servlet容器Spring boot 默认的嵌入了Servlet容器Tomcat打开项目pom文件 右键Diagrams,show Dependencies显示依赖关系图 Ctrl+滚轮,可以缩放 Web应用引用了Spring-boot-starter-webWeb启动器...
Dubbo服务调用原理 服务调用原理参考文档 http://dubbo.apache.org/zh-cn/docs/dev/design.html 引用服务最终,创建一个代理对象InvokerInvocationHandler Invoke,是一层一层封装的结果 invoker.invoke执行 MockClusterInvoker invoker.invoke...
Dubbo服务引用原理 服务引用原理 配置文件 通过Spring容器加载 每一个标签,对应一个解析类Reference对应ReferenceBean 实现了FactoryBean FactoryBean工厂Bean 引用标签,通过往容器中,注入Bean 使用时,从容器中,获取Bean对象getObject返回标签配置的Bean对象 Get获取Bean...
Dubbo服务暴露原理 服务暴露原理配置文件IOC容器启动,加载配置文件的时候 Dubbo标签处理器,解析每一个标签封装成对应的组件 service解析service标签 将service标签信息,封装成ServiceBeanServiceBean实现了两个重要机制 InitializingBeanSpring的接口 当组件创建完对象之后 会调用In...
Dubbo标签解析原理 配置文件是Spring的配置文件 程序启动,是以Spring的方式加载配置文件启动 Spring解析,配置文件中的每一个标签BeanDefinitionParser标签解析器 搜索,BeanDefinitionParser Ctrl+T,查看继承树 DubboBeanDefinitionParserDubbo标签解析器 Parse解析标签...
Dubbo框架设计原理 框架设计参考文档 http://dubbo.apache.org/zh-cn/docs/dev/design.html 整体分为三层Business业务逻辑层,只有一层Service 面向接口编程,一个接口,对应一个实现 远程调用,通过调用接口,来调用接口实现RPC用于完成远程过程调用,分为很多层Config配置层 用于封装配置文件中,解析的一些信息...
Spring boot定制错误数据携带出去 定制错误数据Spring boot出现错误以后,会来到/error请求 会被BasicErrorController处理,自适应返回浏览器访问,返回页面 客户端访问,返回json getErrorAttributes获取返回的响应数据在AbstractErrorController中定义 BasicErrorController的父类 BasicErr...
Spring boot定制错误json数据 定制错误json数据客户端访问 如果,程序出错了 返回的json数据,需要定制的定制错误页面 在模板文件夹、或者静态资源文件夹下 放置一个error文件夹,里面存放错误状态码对应的页面这些页面,就是错误页面 在错误页面,可以获取相关的错误信息自定义异常UserNotExistException 为了使异常抛出,继承运行时异常 写一个无参的构造器,调用super...
Spring boot定制错误页面 定制错误页面浏览器访问 如果,程序出错了 需要返回一个符合项目网站风格的页面有模板引擎的情况下 error/状态码将错误页面命名为,错误状态码.html 放在模板引擎文件夹里面的,error文件夹下 发生此状态码的错误,就会来到对应的页面 DefaultErrorViewResolver默认错误视图解析器 可以使用 4xx和5xx作为错误页面的文件...
Spring boot错误处理原理 错误处理原理ErrorMvcAutoConfiguration 错误处理自动配置 自动配置给容器中添加了以下组件1、DefaultErrorAttributes 2、BasicErrorController 3、ErrorPageCustomizer 4、DefaultErrorViewResolver错误处理过程一但系统出现4xx或者5xx之类的错误 ...
Spring boot错误处理机制 错误处理机制当程序发生错误的时候浏览器访问Spring boot提供了一个默认的错误页面 包括错误状态码、错误类型、提示消息、时间 客户端访问当程序发生错误的时候 默认响应了一个json数据 Spring boot 会自动识别访问的类型 返回对应的错误提示类型浏览器,返回一个错误页面 客户端,返回一个json数据...
Netty通信原理 Netty基于Java框架NIO,进行通信 是一个异步事件驱动的,网络应用程序框架用于快速开发可维护的高性能协议服务器和客户端 极大地简化了TCP和UDP套接字服务器等网络编程Dubbo底层通信使用的netty框架,进行通信实现原理基于NIO的多路复用模型,来实现通信 启动过程Netty服务器启动 会绑定监听某一个端口 比如,dubbo的20...
BIO与NIO区别 IO网络IO、本地IO 网络间的数据传输,称为网络IO 本地磁盘间的数据传输,称为本地IOBIOBlocking IO 阻塞IO实现原理服务器,当每一个请求进来 要接收传来的数据,都会开启一个Socket 开启一个线程,来处理数据 读取Socket传递的数据 获取到InputStream,读取数据 进行业务逻辑操作,操作完成之后 返回结果服务器会收到很...
RPC原理 RPCRemote Procedure Call 远程过程调用调用步骤1、服务消费方client调用,以本地调用方式,调用服务 2、client stub接收到调用后,负责将方法、参数等 组装成能够进行网络传输的消息体 client stub,客户端代理 3、client stub找到服务地址,并将消息发送到服务端 4、server stub收到消息后,进行解码 s...