6 小时前 / 祝坤荣(时序)
用@WebMvcTest测试MVC Web Contorller(一)祝坤荣发布于 2 月 28 日原文 https://reflectoring.io/sprin...翻译: 祝坤荣在这个测试Spring Boot系列的第二部分,我们来看下web contoller。开始,我们会探索下web controller到底做了什么,然后我们可以基于写单元测试来覆盖所有它的职责。 然后,我们来看看如果在测试用覆盖这些职责。只有当所有这些职责都被覆盖到了,我们才可以肯定我们的contoller的行为应该与线上环境一样了。 样例代码这篇文章提供在GitHub上的可运行代码。
1 天前 / 三分恶
@ 2.1、无返回值的异步方法 2.1、有返回值的异步方法 3.1、方法级别重写 Executor 3.2、应用级别重写 Executor 3.3、自定义线程池配置 “异步调用”对应的是“同步调用”, 在实际开发中,有时候为了及时处理请求和进行响应,我们可能使用异步调用,同步调用指程序按照定义顺序依次执行,每一行程序都必须等待上一行程序执行完成之后才能执行;异步调用指程序在顺序执行时,不等待异步调用的语句返回结果就执行后面的程序。异步调用的实现有很多,例如多线程、定时任务、消息队列等。 这里学习使用 @Async 注解来实现异步调用。
7 天前 / 三分恶
@ 1、什么是 OAuth 2、OAuth 角色 3、OAuth 授权流程 4、OAuth 授权模式 4.1、授权码 4.2、隐藏式 4.3、密码式 4.4、凭证式 1、密码模式 1.1、授权服务器 1.2、资源服务器 1.3、测试 2、授权码模式 2.1、应用注册 2.2、具体代码 2.3、测试 一、OAuth 简介 在这里插入图片描述 1、什么是 OAuth 开放授权(Open Authorization,OAuth)是一种资源提供商用于授权第三方应用代表资源所有者获取有限访问权限的授权机制。由于在整个授权过程中,第三方应用都无须触及用户的密码就可以取得部分资源的使用权限,所以 OAuth 是安全开放的。
8 天前 / 浩子淘天下
新冠病毒还在阻挡全世界重启,但我们学习脚步不不能停滞,接下来给大家展示一个现在开发中已经不太常用的一个小知识点,希望对大家有所启发。在平时 大家可能用 Spring Boot 2 最多就是开发 RESTful API,可能很少有人在 Spring Boot 2 中用过 JSP 视图,那我就来一起体验下创建一个用 JSP 视图的 Spring Boot 2 应用有多么方便。
20 天前 / 攻城狮-正
Elasticsearch (简称ES) 是一个基于 Lucene 的分布式、高扩展、高实时的搜索与数据分析引擎。本章介绍 Spring Boot 应用集成 Elasticsearch ,通过 Spring 封装的API访问 Elasticsearch 。 Spring Data Elasticsearch 是 Spring Data 子项目,提供对 Elasticsearch 集成与访问的支持。需要注意的是 Spring Data Elasticsearch 版本 3.2.x 与 4.x 不兼容,在升级 Spring Boot 版本时要做好评估。本章是以 Spring Data Elasticsearch 4.x 为基础。
31 天前 / vivo互联网技术
作为后台服务开发,在日常工作中我们天天都在跟数据库打交道,一直在进行各种 CRUD 操作,都会使用到数据库连接池。按照发展历程,业界知名的数据库连接池有以下几种:c3p0、DBCP、Tomcat JDBC Connection Pool、Druid 等,不过最近最火的是 HiKariCP。 HiKariCP 号称是业界跑得最快的数据库连接池,自从 SpringBoot 2.0 将其作为默认数据库连接池后,其发展势头锐不可当。那它为什么那么快呢?今天咱们就重点聊聊其中的原因。
32 天前 / Joinncat
切换 Druid 连接池在分析 SpringBoot 自动配置实现原理之前,先来看一下在使用 SpringBoot 开发的项目代码中如何将数据库连接池切换成 Druid。 对于数据库连接池的选择,SpringBoot 官方更偏向于推荐使用 HikariCP,原因是他们认为 HikariCP 的性能和并发性比较好,如果当前代码的 classpath 路径下存在 HikariCP 的 jar 包,则会优先使用 HikariCP 数据库连接池;如果当前代码的 classpath 路径下不存在 HikariCP 的 jar 包,存在 Tomcat 数据库连接池的 jar 包...
32 天前 / Joinncat
切换 Druid 连接池在分析 SpringBoot 自动配置实现原理之前,先来看一下在使用 SpringBoot 开发的项目代码中如何将数据库连接池切换成 Druid。 对于数据库连接池的选择,SpringBoot 官方更偏向于推荐使用 HikariCP,原因是他们认为 HikariCP 的性能和并发性比较好,如果当前代码的 classpath 路径下存在 HikariCP 的 jar 包,则会优先使用 HikariCP 数据库连接池;如果当前代码的 classpath 路径下不存在 HikariCP 的 jar 包,存在 Tomcat 数据库连接池的 jar 包...
34 天前 / 码农UP2U
在 Spring Security 中有一个加密的类 BCryptPasswordEncoder ,它的使用非常的简单而且也比较有趣。让我们来看看它的使用。 BCryptPasswordEncoder 的使用 首先创建一个 SpringBoot 的项目,在创建项目的时候添加 Spring Security 的依赖。然后我们添加一个测试类,写如下的代码: final private String password = "123456"; @Testpublic void TestCrypt(){ BCryptPasswordEncoder bCryptPasswordEncoder = new BCryptPasswordEncoder(); String encode1 = bCryptPasswordEncoder.encode(password); System.out.println("encode1:" + e...
35 天前 / 程序员MarkChou
不管是开发过程中调试还是线上问题的定位追踪,日志都发挥着及其重要的作用。平时,我们会用 System.out.println()打印一些信息到控制台,我们可以使用该语句输出日志,但是 System.out 会增加资源的消耗,所以最好使用日志框架打印日志信息。 Java 中的日志框架有 JCL、Jboss-logging、slf4j、logback、log4j、log4j2 等等,其中 JCL、Jboss-logging、slf4j 属于日志门面(日志的抽象),logback、log4j、log4j2 是日志框架的具体实现。阿里巴巴开发规范强制要求使用日志的门面而不要直接使用日志系统的 API。
40 天前 / 码农UP2U
Spring Boot 框架的诞生,使得 Java 框架整合变得越来越容易了,只要加入对应的 starter 和 简单的必要设置 就可以轻松的完成。框架整合完成后就可以开始愉快的开发了。如果我们整合的是一个基于 Web 的框架,那么整合完框架后,就需要引入几个小的功能到项目中,分别是 统一返回格式、参数校验 和异常处理。 准备工作 我们创建一个 Spring Boot 的项目,然后引入 Lombok 和 Spring Web 即可。因为这几个功能都不需要使用数据库,只需要一个 Controller 即可。