随笔分类 - springboot
摘要:一、基础工作 1、创建项目springboot项目,勾选web+JDBC+MySQL驱动 2、导入mybatis-springboot-starter依赖 <!-- mybatis-springboot-starter--> <dependency> <groupId>org.mybatis.spr
阅读全文
摘要:1:导包。 <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.17</version> </dependency>2:applicat
阅读全文
摘要:1、Druid简介Java程序很大一部分要操作数据库,为了提高性能操作数据库的时候,又不得不使用数据库连接池。Druid 是阿里巴巴开源平台上一个数据库连接池实现,结合了 C3P0、DBCP 等 DB 池的优点,同时加入了日志监控。Druid 可以很好的监控 DB 池连接和 SQL 的执行情况,天生
阅读全文
摘要:60、数据访问-数据库场景的自动配置分析与整合测试 导入JDBC场景 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jdbc</artifactId> </d
阅读全文
摘要:修改配置文件 xxxxxCustomizer 编写自定义的配置类 xxxConfiguration + @Bean替换、增加容器中默认组件,视图解析器 Web应用 编写一个配置类实现 WebMvcConfigurer 即可定制化web功能 + @Bean给容器中再扩展一些组件 @Configurat
阅读全文
摘要:默认支持的WebServer Tomcat, Jetty, or Undertow。ServletWebServerApplicationContext 容器启动寻找ServletWebServerFactory 并引导创建服务器。原理 SpringBoot应用启动发现当前是Web应用,web场景包
阅读全文
摘要:原理概述 Springboot向外界提供web服务,底层依赖了springframework中的web模块一整套(包含但不限于spring mvc核心类DispatcherServlet,RequestMappingHandlerMapping等)来实现的; 那么springboot在什么时机向容器
阅读全文
摘要:使用原生的注解@WebServlet(urlPatterns = "/my")public class MyServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServlet
阅读全文
摘要:默认异常情况 在SpringBoot的项目中,如果出现异常,那么默认是如下白板页面。那么我们一般并不会使用默认的错误页面,而都是自定义错误页面。 定制错误页面定制错误页面也有两类情况。 1、如果们使用模板引擎的情况下,那么我们可以在 templates 目录下创建一个 error 目录,在里面创建
阅读全文
摘要:ErrorMvcAutoConfiguration 自动配置异常处理规则容器中的组件:类型:DefaultErrorAttributes -> id:errorAttributespublic class DefaultErrorAttributes implements ErrorAttribut
阅读全文
摘要:默认效果: 1)、浏览器,返回一个默认的错误页面 浏览器发送请求的请求头: 2)、如果是其他客户端,默认响应一个json数据,比如postman客户端,接收application/json 原理: 可以参照ErrorMvcAutoConfiguration;错误处理的自动配置; 给容器中添加了以下组
阅读全文
摘要:文件上传相关的自动配置类MultipartAutoConfiguration有创建文件上传参数解析器StandardServletMultipartResolver。 @Configuration(proxyBeanMethods = false) @ConditionalOnClass({ Ser
阅读全文
摘要:页面代码/static/form/form_layouts.html <form role="form" th:action="@{/upload}" method="post" enctype="multipart/form-data"> <div class="form-group"> <lab
阅读全文
摘要:1.DispatcherServlet的doDispatch方法 DispatcherServlet的doDispatch方法是请求的入口。 protected void doDispatch(HttpServletRequest request, HttpServletResponse respo
阅读全文
摘要:编写一个拦截器实现HandlerInterceptor接口 拦截器注册到容器中(实现WebMvcConfigurer的addInterceptors()) 指定拦截规则(注意,如果是拦截所有,静态资源也会被拦截】 编写一个实现HandlerInterceptor接口的拦截器: @Slf4j publ
阅读全文
摘要:视图解析原理流程: 目标方法处理的过程中(阅读DispatcherServlet源码),所有数据都会被放在 ModelAndViewContainer 里面,其中包括数据和视图地址。方法的参数是一个自定义类型对象(从请求参数中确定的),把他重新放在 ModelAndViewContainer 。任何
阅读全文
摘要:控制层代码: @GetMapping("/dynamic_table") public String dynamic_table(Model model){ //表格内容的遍历 List<User> users = Arrays.asList(new User("zhangsan", "123456
阅读全文
摘要:公共页面/templates/common.html <!DOCTYPE html> <html lang="en" xmlns:th="http://www.thymeleaf.org"><!--注意要添加xmlns:th才能添加thymeleaf的标签--> <head th:fragment=
阅读全文
摘要:项目创建 使用IDEA的Spring Initializr。 thymeleaf、 web-starter、 devtools、 lombok 登陆页面 /static 放置 css,js等静态资源 /templates/login.html 登录页 <html lang="en" xmlns:th
阅读全文
摘要:Thymeleaf 是一款用于渲染 XML/XHTML/HTML5 内容的模板引擎。它与 JSP,Velocity,FreeMaker 等模板引擎类似,也可以轻易地与 Spring MVC 等 Web 框架集成。与其它模板引擎相比,Thymeleaf 最大的特点是,即使不启动 Web 应用,也可以直
阅读全文

浙公网安备 33010602011771号