摘要:Spring boot 应用可以添加依赖 来构建响应式 Web 应用程序。 内置响应式服务器 Spring Boot WebFlux 内置 Reactor Netty、Tomcat、Jetty 和 Undertow。默认端口是 8080。 WebFlux 的 CRUD 示例 Springboot W 阅读全文
posted @ 2019-08-20 01:24 O'Neal 阅读 (86) 评论 (0) 编辑
摘要:使用 MyBatis 的 SqlSession MyBatis 的 提供了执行 SQL 语句、提交或回滚事务和获取映射器实例的方法。 SqlSession 由工厂类 SqlSessionFactory 来创建, SqlSessionFactory 又是构造器类 SqlSessionFactoryBu 阅读全文
posted @ 2019-08-19 01:36 O'Neal 阅读 (57) 评论 (0) 编辑
摘要:1 字符串、数组、集合的转换 定义字符串数组 String[] strArr 1.1 字符串数组转集合 1.2 字符串集合转数组 1.3 字符串集合转逗号分隔的字符串 1.4 逗号分隔的字符串转字符串集合 1.5 对象集合转 Map 定义对象 Person 定义对象 Person 的集合 List 阅读全文
posted @ 2019-08-18 00:56 O'Neal 阅读 (83) 评论 (0) 编辑
摘要:Springboot 使用外部 Tomcat 1.修改 pom.xml,改为打 war 包 2.将 Springboot 内置 tomcat 作用域改为 3.重写 SpringBootServletInitializer 4.maven 打包出 war 包后,放到 tomcat 的 webapps 阅读全文
posted @ 2019-08-17 01:33 O'Neal 阅读 (53) 评论 (0) 编辑
摘要:以 Spring MVC 启动 Servlet 为例,其应用上下文为 ServletWebServerApplicationContext,继承了 GenericWebApplicationContext 的大部分方法,主要重写了 postProcessBeanFactory()、refresh() 阅读全文
posted @ 2019-08-16 00:25 O'Neal 阅读 (153) 评论 (0) 编辑
摘要:以使用静态方法 启动 Springboot 为例,启动流程主要分为 SpringApplication 的创建和运行两部分; 创建 1. 设置资源加载器,此处为空 2. 设置 Springboot 启动类 3. 根据类路径判断 web 类型,默认为 SERVLET Spring MVC 4. 读取每 阅读全文
posted @ 2019-08-15 01:26 O'Neal 阅读 (92) 评论 (0) 编辑
摘要:SpringApplication 使用静态方法 使用构造器 使用 builder 1、失败分析器 初始化实现了 FailureAnalyzer 接口的失败分析器,可以在启动失败时,打印错误日志和解决操作方法。比如启动端口被占用时打印如下日志: 2、自定义 Banner 可以将 banner.txt 阅读全文
posted @ 2019-08-14 01:54 O'Neal 阅读 (89) 评论 (0) 编辑
摘要:JRebel 使用 JRebel 可以在修改代码后,动态重新加载修改的代码,免去了代码工程全量重建、重启的耗时流程,有效地提高开发者的效率。在 IDEA 的插件市场搜索 JRebel for IntelliJ 找到安装即可。 JRebel for IntelliJ 版本:2019.1.4 1、启用自 阅读全文
posted @ 2019-08-13 01:53 O'Neal 阅读 (203) 评论 (0) 编辑
摘要:refresh() 1. prepareRefresh() 刷新预处理 1. 设置容器状态为 active 2. 初始化属性配置,空方法,可以重写这个方法来自定义属性 3. 属性配置校验,也是空的 4. 缓存容器中早期事件监听器 2. obtainFreshBeanFactory() 获取 Bean 阅读全文
posted @ 2019-08-12 00:15 O'Neal 阅读 (70) 评论 (0) 编辑
摘要:Spring 自定义了继承 JDK 事件监听器的接口 ,用来监听 Spring 应用程序中的事件;自定义了继承 JDK 事件对象的抽象类 ,用来表示 Spring 应用程序中的事件类型。容器启动刷新过程中,可以定义事件监听器,来监听应用程序上下文事件 ,它有四个具体的实现类: ,分别表示容器启动/刷 阅读全文
posted @ 2019-08-11 00:27 O'Neal 阅读 (166) 评论 (0) 编辑