自定义博客皮肤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)
  • 收藏
  • 关注

原创 【Spring】AOP功能介绍及实现原理

AOP功能介绍及实现原理一. AOP简介二、AOP的主要功能三、AOP底层实现3.1 静态代理3.2 动态代理一. AOP简介面向切面编程。通常用来在不影响原功能的场景下,为代码进行横向扩展。通常代码的结构是纵向扩展的,如下所示: 控制层(Controller) ↓ 业务层(Service) ↓ 数据层(dao)当我们需要对某一层代码进行扩展一些公共行为,比如记录日志的时候,重复在每个类中加代码太过繁

2020-05-30 20:13:21 1104

原创 【Spring Cloud】学习教程(六):Hystrix 监控数据聚合 Turbine【Finchley】

Hystrix 监控数据聚合 Turbine一、准备工作二、创建 Turbine2.1 通过 HTTP 收集聚合2.2 通过消息代理收集聚合上一篇我们介绍了使用 Hystrix Dashboard 来展示 Hystrix 用于熔断的各项度量指标。通过 Hystrix Dashboard,我们可以方便的查看服务实例的综合情况,比如:服务调用次数、服务调用延迟等。但是仅通过 Hystrix Dashboard 我们只能实现对服务当个实例的数据展现,在生产环境我们的服务是肯定需要做高可用的,那么对于多实例的情况

2020-05-24 18:50:35 276

原创 【Spring Cloud】学习教程(五):Hystrix 监控面板 Dashboard【Finchley】

Hystrix 监控面板 Dashboard一、创建 Hystrix Dashboard1.1 POM 配置1.2 启动类1.3 配置文件二、为服务实例添加 endpoint2.1 POM 配置2.2 启动类2.3 配置文件2.4 测试2.5 界面解读参考在上一篇 Hystrix 的介绍中,我们提到断路器是根据一段时间窗内的请求情况来判断并操作断路器的打开和关闭状态的。而这些请求情况的指标信息都是 HystrixCommand 和 HystrixObservableCommand 实例在执行过程中记录的重

2020-05-22 17:41:10 222

原创 【Spring Cloud】学习教程(四):服务容错保护 Hystrix【Finchley】

服务容错保护 Hystrix一、服务雪崩效应1.1 定义1.2 形成的原因1.3 应对策略分布式系统中经常会出现某个基础服务不可用造成整个系统不可用的情况,这种现象被称为服务雪崩效应。为了应对服务雪崩,一种常见的做法是手动服务降级。而 Hystrix 的出现,给我们提供了另一种选择。Hystrix [hɪst’rɪks] 的中文含义是 “豪猪”,豪猪周身长满了刺,能保护自己不受天敌的伤害,代表了一种防御机制,这与 Hystrix 本身的功能不谋而合,因此 Netflix 团队将该框架命名为 Hyst

2020-05-22 11:06:30 185

原创 【Spring Cloud】学习教程(三):服务提供与调用 Eureka【Finchley】

服务提供与调用 Eureka一、服务提供者1.1 POM 包配置1.2 配置文件1.3 启动类1.4 Controller二、服务消费者2.1 使用 LoadBalancerClient2.2 Spring Cloud Ribbon2.3 Spring Cloud Feign踩坑记录三、负载均衡参考上一篇文章我们介绍了 Eureka 服务注册中心的搭建,这篇文章介绍一下如何使用 Eureka 服务注册中心,搭建一个简单的服务端注册服务,客户端去调用服务使用的案例。案例中有三个角色:服务注册中心、服务提供

2020-05-20 20:15:24 185

原创 【LeetCode】15. 三数之和(Middle)

给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。示例:给定数组 nums = [-1, 0, 1, 2, -1, -4],满足要求的三元组集合为:[[-1, 0, 1],[-1, -1, 2]]思路:方法一:暴力破解法三层循环,会超时。方法二:排序+双指针边界判断,对于数组长度 n,如果数组为 null 或者数组长度小于 3

2020-05-19 21:36:52 242

原创 【LeetCode】11. 盛最多水的容器(Middle)

给你 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器,且 n 的值至少为 2。图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为 49。示例:输入:[1,8,6,2,5,4,8,3,7]输出:49思路:方法一:

2020-05-19 14:52:37 173

原创 【Spring】SpringBoot 学习教程(六):@SpringBootApplication注解解析

@SpringBootApplication注解解析简介1.@SpringBootConfiguration2.@EnableAutoConfiguration2.1 @AutoConfigurationPackage2.2 @Import(AutoConfigurationImportSelector.class)总结简介@SpringBootApplication是Spring Boot主函数必须添加的核心注解,主要用来开启自动配置。点击进去可以查看到 @SpringBootApplicatio

2020-05-17 22:29:24 302

原创 【Spring Cloud】学习教程(二):服务注册与发现 Eureka【Finchley】

服务注册与发现 Eureka1、服务注册中心2、集群3、双节点注册中心4、Eureka 集群使用参考第一篇主要介绍了相关理论,这一篇开始我们来一个个的实践一下。Tips:本系列介绍的配置均基于 Spring Boot 2.0.3.RELEASE 版本和 Spring Cloud Finchley.RELEASE版本,阅读本文需要有Spring Boot基础。1、服务注册中心Spring Cloud 已经帮我们实现了服务注册中心,我们只需要很简单的几个步骤就可以完成。首先我们创建一个 Sprin

2020-05-14 09:04:30 316

原创 【Spring Cloud】学习教程(一):服务治理技术概览【Finchley】

服务治理技术概览1、Spring Cloud Netflix 的优势2、Spring Cloud Netflix 主要组件2.1 服务注册与发现 ——Eureka2.1.1 Eureka Server2.1.2 Service Provider2.1.3 Service Consumer2.2 服务调用端负载均衡 ——Ribbon2.3 服务调用端熔断 ——Hystrix2.3.1 雪崩效应2.3.2 断路器2.3.3 监控2.4 服务调用端代码抽象和封装 ——Feign参考Spring Cloud Ne

2020-05-13 17:19:49 232

原创 【LeetCode】6. Z 字形变换(Middle)

将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。比如输入字符串为 “LEETCODEISHIRING” 行数为 3 时,排列如下:L C I RE T O E S I I GE D H N之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“LCIRETOESIIGEDHN”。请你实现这个将字符串进行指定行数变换的函数:string convert(string s, int numRows);示例 1:输入: s = “

2020-05-12 17:26:17 144

原创 【LeetCode】5. 最长回文子串(Middle)

给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。示例 1:输入: “babad”输出: “bab”注意: “aba” 也是一个有效答案。示例 2:输入: “cbbd”输出: “bb”思路:中心扩展...

2020-05-12 15:24:30 137

原创 【LeetCode】4. 寻找两个正序数组的中位数(Hard)

给定两个大小为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出这两个正序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。你可以假设 nums1 和 nums2 不会同时为空。示例 1:nums1 = [1, 3]nums2 = [2]则中位数是 2.0示例 2:nums1 = [1, 2]nums2 = [3, 4]则中位数是 (2 + 3)/2 = 2.5思路:限制了时间复杂度为O(log (m+n)),看到这个时间复杂度

2020-05-12 00:01:48 686

原创 【Spring】SpringBoot 学习教程(五):Spring常用注解解析

Spring常用注解解析简介1、@Autowired1.1 不使用注解1.2 引入@Autowired注解2、@Qualifier(指定注入Bean的名称)3、@Resource4、@Service5、@Scope6、构造IOC容器7、@Component8、@ Repository9、@Service10、@ControllerN、总结简介传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop、事务,这么做有两个缺点:如果所有的内容都配置在.xml文件中,那么.xml文件将

2020-05-11 08:25:50 345

原创 【LeetCode】3.无重复字符的最长子串(Middle)

给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。请注意,你的答案必须是 子串 的长度,“pwke” 是一个子序列,不是子串。思路

2020-05-09 00:01:50 189

原创 【LeetCode】2. 两数相加(Middle)

给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 ->...

2020-05-07 23:19:27 96

原创 【LeetCode】1. 两数之和(Easy)

题目:给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]思路一:将数组...

2020-05-07 07:32:51 251

原创 【Spring】SpringBoot 学习教程(四):Spring Boot集成Redis实现消息队列

Spring Boot集成Redis实现消息队列1.简介2.环境3.实现消息队列3.0 项目结构3.1 添加依赖3.2 配置Application文件3.3 创建消息的接收者3.4 实现发送和接收消息1.简介本文主要介绍Spring Boot连接Redis数据库实现消息队列。2.环境jdk 1.8+Maven 3.0+IDEARedis3.实现消息队列项目源码地址 :http...

2020-05-02 22:59:14 909

原创 【Spring】SpringBoot 学习教程(三):Spring Boot连接MySQL数据库

1.简介本文主要介绍Spring Boot连接数据库的方式,以及如何进行增删改查。2.环境jdk 1.8+Maven 3.0+IDEAMySQL3.Spring Boot用JdbcTemplate方式连接数据库3.1 创建表和初始化数据DROP TABLE IF EXISTS `test_user`;CREATE TABLE `test_user` ( `id` ...

2020-05-01 21:58:49 4534 1

原创 【Spring】SpringBoot 学习教程(二):Spring Boot配置文件使用解析

Spring Boot配置文件使用解析一、配置文件分类二、自定义属性加载三、实体类使用四、多开发配置文件五、多环境配置文件Spring Boot的优点是不需要太多的配置即可使用,但是在实际使用过程中,我们往往需要根据项目的情况来进行一些少量的配置。一、配置文件分类Spring Boot的配置文件主要分为两类:properties 和 YAML(.yml)。.properties 格式的配置...

2020-04-27 14:19:19 637

原创 【Spring】SpringBoot 学习教程(一):创建SpringBoot版的Hello world工程

1.简介Spring可以大大简化项目的开发,因为他开启了自动装配,约定大于配置,可以通过配置文件简单的引入相关的依赖使用相关的功能,可以大大提高开发速度。并且内置了容器,打成包可以直接部署到环境上,非常方便。有很多朋友还在用Eclipse开发项目,此处强烈推荐IDEA,用起来真的十分舒服,本文的开发环境也是IDEA的。2.开发环境JDK 1.8+IDEAMaven 3.0+3.搭...

2020-04-26 16:17:49 315

原创 【Vue】10分钟掌握Vue

10分钟掌握Vue1.Vue官网2.引入3.实例1.v-text:直接在页面上显示2.v-html:以html在页面上显示3.点击触发事件 v-on:click4. v-bind: 属性绑定5.双向数据绑定 v-model6.计算属性 computed7.侦听器 watch8.条件判断 v-if9.显示和隐藏 v-show10.遍历 v-for4.实现简易TodoList1.Vue官网http...

2020-04-19 14:45:28 3936 9

转载 【Java】Guava学习:Cache缓存入门

摘要: 学习Google内部使用的工具包Guava,在Java项目中轻松地增加缓存,提高程序获取数据的效率。一、什么是缓存?根据科普中国的定义,缓存就是数据交换的缓冲区(称作Cache),当某一硬件要读取数据时,会首先从缓存中查找需要的数据,如果找到了则直接执行,找不到的话则从内存中找。由于缓存的运行速度比内存快得多,故缓存的作用就是帮助硬件更快地运行。在这里,我们借用了硬件缓存的概念,...

2020-04-17 14:32:35 347

原创 【Jquery】省市区三级联动插件 :Distpicker以及使用自定义数据库数据

Distpicker主要用来进行表单的省市区三级联动。1.参考地址Git:https://github.com/fengyuanchen/distpicker演示:http://www.jq22.com/yanshi80542.效果示例3.引用代码<script src="/path/to/jquery.js"></script><!-- jQuery...

2020-04-16 16:19:27 2654

原创 【Java】通过Guava设计简单缓存

**谷歌Guava缓存**Guava介绍:Guava是Google guava中的一个内存缓存模块,用于将数据缓存到JVM内存中。实际项目开发中经常将一些公共或者常用的数据缓存起来方便快速访问。Guava Cache是单个应用运行时的本地缓存。它不把数据存放到文件或外部服务器。如果不符合需求,可以选择Memcached、Redis等工具。Guava comes in two flav...

2020-04-16 11:00:32 481

原创 【Oracle】树查询(select...start with... connect by ...prior/connect_by_isleaf)

1.表数据:UP_COMPLAINT_CODE为该数据的父节点id2.构建树形结构查询SELECT LPAD (' ', LEVEL * 3, ' ') || COMPLAINT_NAME, COMPLAINT_CODE, UP_COMPLAINT_CODE FROM tablenameSTART WITH UP_COMPLAINT_...

2020-04-15 17:12:42 270

原创 【Java】Java中二进制字节与十六进制互转

在Java中字节与十六进制的相互转换主要思想有两点:1、二进制字节转十六进制时,将字节高位与0xF0做"&“操作,然后再左移4位,得到字节高位的十六进制A;将字节低位与0x0F做”&“操作,得到低位的十六进制B,将两个十六进制数拼装到一块AB就是该字节的十六进制表示。2、十六进制转二进制字节时,将十六进制字符对应的十进制数字右移动4为,得到字节高位A;将字节低位的十六进制字符对...

2020-04-14 10:20:58 1391

原创 【Select2】多选框使用小结

引用的CSS和JS文件 <script src="~/Scripts/jquery-1.10.2.js"></script> <script src="~/Content/bootstrap/js/bootstrap.js"></script> <link href="~/Content/bootstrap/css/bootstrap...

2020-04-13 16:59:03 444

空空如也

空空如也

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

TA关注的人

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