自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 资源 (1)
  • 收藏
  • 关注

原创 Spring Authorization Server自定义登录与授权页面

基于该篇文章修改。目前官方文档并不完善,便做此记录。置方式来源于官方仓库issuesoauth2-server模块pom添加thymeleaf依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> .

2022-01-23 18:36:56 4938 5

原创 Rest API幂等性解决方案

幂等性:请求N次与请求一次影响相同安全性:是否改变资源HTTP方法名称幂等安全OPTIONS√√HEAD√√GET√√PUT√xDELETE√xPOSTxxPATCHxx解决方案:唯一索引:如流水号、订单号;token令牌:提交前获取唯一token,后端接口使用token作为分布式锁的键token令牌方式改进:token=ip+请求MD5+方法,重复请求具有相同的ip+请求MD5,分布式场景下在网关生成

2021-03-13 19:47:57 273 1

原创 Redis面试题

1、什么是 Redis?高性能的K-V数据库,NoSOL数据库2、Redis 的数据类型?string:字符串Hash:哈希List:连表Set:集合ZSet:有序集合3、使用 Redis 有哪些好处?内存存储,6.0之前单线程,所以效率高4、Redis 相比 Memcached 有哪些优势?Memcached 只支持简单字符串5、Memcache 与 Redis 的区别都有哪些?数据类型,Redis支持的数据类型丰富,而Memcache支持简

2021-02-24 15:22:43 177

原创 短信验证码生成工具

短信验证码生成工具,记录下/** * 验证码工具类 * @author nw * @version 1.0 * @date 2021/2/21 14:16 */public class VerifyCodeUtils { /** * 生成指定长度(1~9位)数字串 * @param length 指定长度,1~9位 * @return {@link String} */ public static String generateCodeT

2021-02-21 14:24:46 1375

原创 Spring Boot 面试题

文章目录Spring Boot、Spring MVC 和 Spring 有什么区别?什么是自动配置?什么是 Spring Boot Stater ?Spring Boot ⽀持哪些内嵌 Servlet 容器?如何在 Spring Boot 应⽤程序中使⽤ Jetty ⽽不是 Tomcat?介绍⼀下@SpringBootApplication 注解Spring Boot 的⾃动配置是如何实现的?开发 RESTful Web 服务常⽤的注解有哪些?Spirng Boot 常⽤的两种配置⽂件什么是 YAML?YA

2021-02-19 17:14:56 614

原创 MySQL面试题

文章目录1、MySQL的复制原理以及流程2、MySQL中myisam与innodb的区别,至少5点3、MySQL中varchar与char的区别以及varchar(50)中的50代表的涵义4、innodb的事务与日志的实现方式5、binlog的几种日志录入格式以及区别6、sql优化7、表中有大字段X(例如:text类型),且字段X不会经常更新,以读为为主,请问8、MySQL中InnoDB引擎的行锁是通过加在什么上完成(或称实现)的?为什么是这样子的?9、常用的索引有哪些种类?1、MySQL的复制原理以及流

2021-02-18 14:13:39 202 1

原创 Spring Cloud面试题

文章目录一、微服务二、服务调用:三、服务注册:四、配置中心:五、熔断降级:六、网关七、消息总线一、微服务1、什么是微服务?微服务是一种软件的开发架构和组织方法,(软件)由明确定义的API进行通信的小型独立的服务组成。更易于扩展和快速开发。2、微服务的优点缺点?说下开发项目中遇到的坑?3、你所知道的微服务技术栈?4、什么是 Spring Cloud ?Spring Cloud是一个微服务框架,提供了全套的分布式系统解决方案。对微服务基础框架Netflix的多个开源组件进行了封装,同

2021-02-08 15:40:35 158 3

原创 OpenFeign(四)

实现解码器Decoder 接口public class FeignResultDecoder implements Decoder { @Override public Object decode(Response response, Type type) throws IOException, DecodeException, FeignException { if (ObjectUtils.isEmpty(response.body())) {

2020-11-28 14:57:14 322

原创 结果集封装优化(三)

@RestControllerAdvice("模块根目录包名(防止框架api被封装)")public class GlobalResponseBodyAdvice implements ResponseBodyAdvice { @Override public boolean supports(MethodParameter methodParameter, Class aClass) { return true; } /** * @param

2020-11-28 14:39:04 117

转载 springboot自动配置总结

自动置原理详解请看https://blog.youkuaiyun.com/u014745069/article/details/83820511@SpringBootApplication = @Configuration + @EnableAutoConfiguration + @ComponentScan@EnableAutoConfiguration =@Import(EnableAutoConfigurationImportSelector.class)+其它注解导入的AutoConfigura..

2020-10-14 19:50:55 170

原创 Rest ful API(二)

/** * @author Administrator * @version 1.0 * @date 2020/10/14 19:04 */@RestController@RequestMapping("demo")public class DemoController { /** * 获取资源列表 * @return */ @GetMapping public Result getList() { return Resu

2020-10-14 19:15:14 414

原创 前后端分离结果集封装(一)

文章目录状态码结果集状态码/** 状态码 * @author Administrator * @version 1.0 * @date 2020/10/12 14:26 */public enum StatusCode { /** * 成功 */ OK(20000,"成功"), /** * 失败 */ ERROR(20001,"失败"); /** * 状态 */ private f

2020-10-14 18:50:43 354

转载 OpenFeign服务调用

OpenFeign笔记目录0 环境 1 前言 2 尝鲜 2.1 创建springboot项目 2.2 yml配置 2.3 启动类配置 2.4 接口配置 2.5 接口调用 2.6 测试结果 3 参数传递 3.1 导入依赖模块 3.2 接口配置 3.3 接口调用 3.4 测试结果 3.5 小结 4 继承特性 4.1 新建maven子模块 4.2 封装接口 4.3 消费者和openfeign添加依赖 4.4 提供者实现接口 4.

2020-09-22 19:46:46 1212

原创 java接口与抽象类

java接口特性:方法只能是public abstract,加不加修饰符都一样(隐式指定);变量只能是public static final,加不加修饰符都一样(隐式指定)。java8特性:可用 static 修饰为静态方法;可用 default 添加默认实现的方法体。接口与抽象类:抽象类只是特殊用途的类,不能实例化,可以有抽象方法,其它和普通类无区别;接口可以多继承;类只能单继承,可实现多个接口。...

2020-08-24 16:29:31 115

原创 Object方法总结

native:本地方法,C/C++写的,快得飞起final:最终方法,不能重写(重写,不是重载)方法说明native Object clone()复制当前对象boolean equals(Object obj)比较对象,默认“==”实现,需重写void finalize()内存被GC回收时调用,空实现final native Class<?> getClass()获得Classnative int hashCode()返回对象的哈希码

2020-08-24 15:56:52 145 1

原创 nacos服务配置中心

pom<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4

2020-08-14 09:39:33 269

原创 nacos服务注册与发现

新建命名空间[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fJStooSL-1597298073606)(C:%5CUsers%5CAdministrator%5CAppData%5CRoaming%5CTypora%5Ctypora-user-images%5C1597297331162.png)]2.pom<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apac

2020-08-13 13:57:56 622

原创 java8 Stream

Stream三步:创建流;中间操作;终止操作文章目录创建流中间操作终止操作创建流stream() − 为集合创建串行流。parallelStream() − 为集合创建并行流。中间操作方法说明peek()主要debug用map()、mapToInt()、mapToDouble()映射flatMap()多个集合元素合并到同一个集合filter()按条件过滤sorted()排序distinct()去重limit().

2020-08-02 18:00:22 103

转载 Docker安装Nacos

下载Nacos镜像docker pull nacos/nacos-server查看镜像docker images启动Nacosdocker run --env MODE=standalone --name nacos -d -p 8848:8848 nacos/nacos-server# 登录密码默认nacos/nacos# standalone代表着单机模式运行,非集群模式访问Nacos访问地址:http://localhost:8848/nacos...

2020-07-14 17:41:24 381

原创 SpringCloud搭建Eureka集群

SpringCloud教程SpringCloud版本 <spring-cloud.version>Hoxton.SR4</spring-cloud.version>配置文件application.ymlspring: application: name: eureka-clustereureka1.ymlserver: port: 8761eureka: instance: hostname: eureka-server1

2020-07-08 13:19:25 172

原创 SpringBoot整合MongoDB事务

文章目录1.Docker安装MongoDB2.配置副本集3.SpringBoot整合MongoDB1.Docker安装MongoDB拉取镜像docker pull mongo:latest启动节点docker run --name m0 -p 27017:27017 -d mongo --replSet "rs"docker run --name m1 -p 27018:27017 -d mongo --replSet "rs"docker run --name m2 -p 27019:27

2020-07-06 13:19:34 1703 2

转载 MongoDB介绍

文章目录1. NoSQL简介1.1 RDBMS vs NoSQL1.2 RDBMS vs NoSQL事务特性RDBMS:ACIDNoSQL:CAPNoSQL:BASE1.3 NoSQL优缺点2. MongoDB简介2.1 主要特点2.2 概念解析3. MongoDB和Redis的区别1. NoSQL简介NoSQL(NoSQL = Not Only SQL ),非关系型数据库,也意"not only SQL"。通过应用实践证明,关系模型是非常适合于客户服务器编程,远远超出预期的利益,今天它是结构化数据

2020-07-05 12:44:10 379

原创 SpringBoot整合RabbitMQ

Maven <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency> <dependency> <groupId&gt

2020-07-01 20:09:19 164

原创 RabbitMQ初体验

1.Docker安装RabbitMQ拉取镜像: docker pull rabbitmq:management ,management带有控制台创建容器: docker run --name rabbitmq -d -p 15672:15672 -p 5672:5672 rabbitmq:management访问控制台: http://ip:15672,用户名和密码默认为:guest2.简单使用Maven:<!-- https://mvnrepository.com/artifac

2020-07-01 14:24:39 185

转载 RabbitMQ介绍

文章目录1.什么叫消息队列2.为何用消息队列3.RabbitMQ 特点4.RabbitMQ 中的概念模型1.什么叫消息队列消息(Message)是指在应用间传送的数据。消息可以非常简单,比如只包含文本字符串,也可以更复杂,可能包含嵌入对象。消息队列(Message Queue)是一种应用间的通信方式,消息发送后可以立即返回,由消息系统来确保消息的可靠传递。消息发布者只管把消息发布到 MQ 中而不用管谁来取,消息使用者只管从 MQ 中取消息而不管是谁发布的。这样发布者和使用者都不用知道对方的存在。2.

2020-07-01 14:20:07 147

转载 Spring 事务

文章目录1. Spring事务传播机制事务的特性Spring事务的配置方式传播机制2. 事务的隔离级别3. 只读4. 事务超时5. 回滚规则6. Spring声明式事务配置参考1. Spring事务传播机制事务的特性原子性(Atomicity):事务是一个原子操作,由一系列动作组成。事务的原子性确保动作要么全部完成,要么完全不起作用。一致性(Consistency):一旦事务完成(不管成功还是失败),系统必须确保它所建模的业务处于一致的状态,而不会是部分完成部分失败。在现实中的数据不应该被破坏。

2020-06-29 11:14:29 141

原创 Spring AOP

文章目录1. 相关概念2. 通知类型3. 注解方式使用4. 环绕通知AOP即面向切面编程,是对OOP面向对象编程的补充与完善。主要用来解决系统中事务、日志以及权限等问题。其在不改变原有逻辑的基础上进行增强和扩展。1. 相关概念Join point :连接点,程序执行过程中的点,如方法的执行或异常的处理。在Spring中,连接点始终代表方法的执行。Pointcut :切点,连接点的集合,主要体现为切入点表达式,Spring默认使用AspectJ切入点表达语言;Weaving:织入,将切面应用

2020-06-26 14:28:36 181

原创 Spring IOC

文章目录1. 实现(简单工厂模式、工厂方法模式)2. Bean定义3. 作用域4. 生命周期(创建、销毁)5. 注入集合6. 自动装配7. 注解8. JSR-250注解9. 基于java的配置10. 监听上下文事件`未完待续...`1. 实现(简单工厂模式、工厂方法模式)BeanFactory 是Spring基础接口ApplicationContext(Spring上下文) 是 BeanFactory 接口 的扩展<?xml version="1.0" encoding="UTF-8"?

2020-06-24 17:30:45 225

SpringBoot整合RabbitMQ

消息队列(Message Queue)是一种应用间的通信方式,消息发送后可以立即返回,由消息系统来确保消息的可靠传递。消息发布者只管把消息发布到 MQ 中而不用管谁来取,消息使用者只管从 MQ 中取消息而不管是谁发布的。这样发布者和使用者都不用知道对方的存在。

2020-07-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除