1.springboot异常处理
BasicErrorController:处理默认/error请求
DefaultErrorViewResolver:响应页面;去哪个页面是由DefaultErrorViewResolver解析得到的
2.配置嵌入式Servlet容器
SpringBoot默认使用Tomcat作为嵌入式的Servlet容器;
3.注册Web三大组件
由于SpringBoot默认是以jar包的方式启动嵌入式的Servlet容器来启动SpringBoot的web应用,没有web.xml文件。
注册三大组件用以下方式:
(1)ServletRegistrationBean 注册Servlet组件
(2)FilterRegistrationBean 注册Filter组件
(3)ServletListenerRegistrationBean 注册监听器组件
4.Docker简介
Docker是一个开源的应用容器引擎;是一个轻量级容器技术;
Docker支持将软件编译成一个镜像;然后在镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使用这个镜像;
运行中的这个镜像称为容器,容器启动是非常快速的。
5.Docker的核心概念
docker主机(Host):安装了Docker程序的机器(Docker直接安装在操作系统之上);
docker客户端(Client):连接docker主机进行操作;
docker仓库(Registry):用来保存各种打包好的软件镜像;
docker镜像(Images):软件打包好的镜像;放在docker仓库中
docker容器(Container):镜像启动后的实例称为一个容器;容器是独立运行的一个或一组应用
6. springboot如何开启自动配置
main方法所在类的@SpringBootApplication注解
SpringBootApplication
public class SpringbootQuickApplication {
public static void main(String[] args) {
SpringApplication.run(SpringbootQuickApplication.class,args);
}
}
8.springboot如何处理异常的
自定义错误页面
@ExceptionHandle 注解处理异常
@ControllerAdvice+@ExceptionHandler 注解处理异常
配置 SimpleMappingExceptionResolver 处理异常
自定义 HandlerExceptionResolver 类处理异常
9.在springboot中,如何使用拦截器?
实现拦截器
public class InterceptorDemo extends HandlerInterceptorAdapter {
@Override
public boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o) throws Exception {
StringBuffer requestURL = httpServletRequest.getRequestURL();
System.out.println(“前置拦截器1 preHandle: 请求的uri为:”+requestURL.toString());
return true;
}
@Override
public void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception {
System.out.println("拦截器1 postHandle: ");
}
@Override
public void afterCompletion(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) throws Exception {
System.out.println("拦截器1 afterCompletion: ");
}
}
注册拦截器
@Configuration
public class InterceptorConfig implements WebMvcConfigurer{
//注册自定义拦截器
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new InterceptorDemo2()).addPathPatterns("/**");
registry.addInterceptor(new InterceptorDemo()).addPathPatterns("/**");
}
}