自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 论坛 (1)
  • 收藏
  • 关注

原创 多线程学习--关于ReentrantLock源码详细解读

对于源码的阅读,有几点总结:1.跑不通的源码,不读;2.解决问题为目的;3.总体把握,先不扣细节;4.抓住一条线,往下阅读话不多说,简单demo断点调试,JDK版本为1.8public class TestReentrantLock { private static volatile int i = 0; public static void main(String[] args) { ReentrantLock lock = new Reent

2020-11-20 16:00:29 25 2

原创 Java NIO学习,一次读懂Java NIO

Java NIO 和 IO 的区别缓冲区存取数据的两个核心方法put:存入数据到缓冲区get:获取缓冲区中的数据缓冲区的四个核心属性capacity:容量,表示缓冲区中最大存储数据的容量,一旦声明不能改变position:位置,表示缓冲区中正在操作数据的位置limit:界限,表示缓冲区中可以操作数据的大小。(limit后的数据不能进行读写)mark:标记,表示记录当前position的位置,可以通过reset恢复到mark的位置0 <= mark <= p

2020-10-09 09:52:37 382 4

原创 spring ioc源码层看spring循环依赖的问题

首先,什么是循环依赖?如上图所示bean的创建流程:创建A----实例化-->依赖b---->创建B----->依赖a---->创建A出现了闭环,也就是spring的循环依赖bean的后置处理器9处调用spring ioc在创建bean过程中,会调用8次bean的后置处理器BeanPostProcessor,第九次是在bean销毁的时候调用在bean的创建过程中,bean可被划分为四种形态:概念态的bean、定义态的bean、纯洁态的bean、成熟态

2020-08-31 14:25:48 78 1

原创 RabbitMQ之死信队列和延迟队列

死信队列DLX,全称为 Dead-Letter-EXchange,可以称之为死信交换机,也有人称之为死信邮箱。当消息在一个队列中变成死信( dead message)之后,它能被重新发送到另—个交换机中,这个交换机就是DLX,绑定DLX的队列就称之为死信队列。消息变成死信,可能是由于以下的原因: 消息被拒绝 消息过期 队列达到最大长度 DLX也是一个正常的交换机,和一般的交换机没有区别,它能在任何的队列上被指定,实际上就是设置某一个队列的属性。当这个队列中存在死信时,

2020-08-17 09:55:53 139

原创 Navicat打开mysql表一致处于加载中,删除表也不行-----表死锁

导致原因:在做数据传输时由于VPN断开连接,导致数据传输失败,再次传输时,一直就没有速度,强制关闭了现象:Navicat打开mysql表一致处于加载中,表死锁了解决办法:① 在Navicat中执行:SHOW PROCESSLIST;查询到所有库的进程,如下图:发现最下面一个进程一直处于查询中的状态,再查看所有数据,发现有多处查询死锁表的进程一致处于查询中。死锁原因:并发操作表导致表死锁② 在Navicat中执行: kill 12598; (kill + 进程号(表I.

2020-08-07 15:22:13 136

原创 Mongodb去重查询

最近工作中用到Mongodb,于是花时间学习了一下,简单入门回归正题,简单的查询、修改、删除就不说了哈。去重查询//1.连接数据库,若存在即选中,若不存在就建立MongoDatabase mongoDatabase = DbUtils.getMongoDatabase();//2.获取连接MongoCollection mongoCollection = mongoDatabase.getCollection("数据库名");//去重查询DistinctIterable disti.

2020-07-30 15:42:05 1082

原创 mongodb简单入门学习

- MongoDB是一个NoSQL的数据库- MongoDB是一款文档型数据库- 数据库指的就是一个存储数据的仓库数据库可以使我们完成对数据的持久化的操作- MongoDB数据库中存储的数据的基本单位就是文档,MongoDB中存储的就是文档,所谓文档其实就是一个“JSON”- MongoDB中的“JSON”我们称为BSON,比普通的JSON的功能要更加的强大- MongoDB数据库使用的是JavaScri...

2020-07-14 08:55:47 77

原创 org.apache.ibatis.binding.BindingException: Parameter XXX not found.的问题

今天在学springcloud alibaba seata时,遇到一个问题。业务流程是:创建订单调用库存服务扣减库存,调用账户服务扣减账户余额,最后修改订单状态有三个服务,订单order服务,库存storage服务和账户account服务;将三个服务注册进alibaba的nacos,启动nacos,再启动seata,seata用来管理分布式服务间的事务进行测试时候报错:org.apache.ibatis.binding.BindingException: Parameter 'count'

2020-06-11 14:32:15 141

原创 SpringCloud Alibaba Nacos集群配置遇到的坑

这两天在学习SpringCloud Alibaba Nacos,搭建环境时,nginx+3个nacos+mysql,出现一些问题。至于liunx环境下的nginx、nacos、mysql安装,可参考附的博客。这里主要说下我遇到的几个不大不小的坑。首先,我是在虚拟机里面配置nacos集群1.安装nacos单机版配置具体安装nacos步骤可参考博客:https://blog.csdn.net/qq_42449963/article/details/105695053先复制出一个cluster.c

2020-06-08 23:20:03 416

原创 SpringCloud学习遇到的坑,通过Eureka中已经注册的服务名,调用不了已经注册的服务

前提:服务提供者8001已经成功注册到eureka但是根据服务名称调用接口时,失败private static final String PAYMENT_URL = "http://CLOUD-PAYMENT-SERVICE"; //集群配置@Resourceprivate RestTemplate restTemplate;@GetMapping(value="/consumer/payment/zipkin")public String paymentZipkin(.

2020-06-02 23:10:19 1586

原创 TeamViewer连接时闪退

之前由于TeamViewe被检测到用于商业用途,被限制时间了,就按照网上的办法,修改了mac地址,重新安装teamviewer了第一次远程时一切正常,第二天再远程时,出现闪退现象,重新安装teamviewer也没用。后来发现,远程连接的电脑安装的teamviewer版本是15.3版本,而本机安装的是15.2,连接时出现闪退手动更新本机的teamviewer后,进行登录验证,再次进行连接,一切正常。特此记录,希望能帮到遇到同样问题的你。...

2020-05-12 09:12:38 18061 2

原创 搭建Mybatis+Spring开发环境集成Mapper

标题搭建Mybatis+Spring开发环境集成Mapper加入 Maven 依赖信息<dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper</artifactId> <version>4.0.0-beta3</versi...

2020-03-28 10:22:13 59

原创 git常见报错解决办法,fatal: the remote end hung up unexpectedly

问题一:上传GIT项目报fatal: the remote end hung up unexpectedly错误上传项目报fatal: the remote end hung up unexpectedly的错误,应该是项目太大的原因,要么是网络不行,要么墙的原因解决办法:修改提交缓存大小为500M,或者更大的数字git config --global http.postBuf...

2020-03-10 10:57:01 128

原创 Spring中@Bean的生命周期和@Value赋值的理解

@Bean的生命周期bean创建—初始化—销毁容器管理bean的生命周期我们可以自定义初始化和销毁方法;容器在bean进行到当前生命周期的时候来调用我们自定义的初始化和销毁方法构造(对象创建)单实例:在容器启动的时候创建对象多实例:在每次获取的时候创建对象初始化:对象创建完成,并赋值好,调用初始化方法销毁:容器关闭的时候销毁1.指定初始化和销毁方法;以前基于配置,有init...

2020-03-05 09:03:44 402

原创 Spring常用的几个注解@Configuration、@Bean、@ComponentScan

@Configuration:告诉Spring这是一个配置类,配置类===配置文件@Bean:给容器注入一个bean,类型为返回值类型,id默认是用方法名作为id@Configuration//@ComponentScan value:指定要扫描的包//excludeFilters=Filter[]:指定扫描的时候按照什么规则排除哪些组件//includeFilters=Filter[...

2020-03-03 10:00:08 69

原创 GIT的基本使用,使用git将本地项目推送到远程仓库github

最近因为需要远程办公,所以决定使用git进行项目的版本管理,因为之前都是用的SVN进行管理的,所以还是学习了一下git的基本使用,大大们勿笑。1. 先创建一个本地的版本库(即创建一个文件夹)你可以直接右击新建文件夹,也可以打开 git-bash.exe命令行窗口通过命令来创建。现在我通过命令行新建一个test文件夹(你也可以在其他任何地方创建这个文件夹),并且进入该文件夹目录下。2. 通...

2020-02-29 15:22:21 169

原创 Vue_源码简单分析,数据代理、模板解析、数据绑定

分析vue作为一个MVVM框架的基本实现原理1.数据代理2.模板解析3.数据绑定数据代理数据代理:通过一个对象代理另一个对象中属性的操作(读/写)vue数据代理:通过vm对象来代理data对象中所有属性的操作好处:更方便的操作data中的数据基本实现流程:1.通过Object.defineProperty()给vm添加与data对象的属性对应的属性描述符2.所有添加的属性都包含...

2020-02-28 09:35:29 85

原创 Vue_组件间通信3,插槽slot

组件间通信传递消息,很多时候传递的都是数据;而slot可以传递标签TodoFooter.vue组件<template> <div class="todo-footer"> <label> <!--<input type="checkbox" v-model="checkAll"/>--> <...

2020-02-27 14:27:18 84

原创 Vue_组件间通信2,使用PubSubJS库

组件间通信第一种方式:使用标签传递数据,props声明接收属性组件间通信第二种方式:vue自定义事件,绑定事件监听和触发事件组件间通信第三种方式:消息订阅和发布,使用pubsubjs库使用ubsub通信的好处就是,两个组件间的位置没有任何要求有三层组件,App–List–Item在Item中有删除选中行的功能,在App中订阅消息,在Item中发布消息App.vue<templa...

2020-02-25 11:04:03 87

原创 Vue_组件化编码,组件间通信1,通过标签传递数据

组件化编码的基本流程:1.拆分组件2.实现静态组件:显示的界面数据是固定的,也没有交互3.动态组件:有两个方面是动态的,初始化显示和交互组件间通信1.通过标签传递组件接收父组件传递过来的数据,首先要有声明,接收传递过来的属性;这个属性就会成为组件对象的属性示例编码:拆分为App、Add、List和Item组件js的入口文件main.js/*入口JS*/import Vu...

2020-02-23 12:51:50 53

原创 Vue_自定义事件2

事件监听绑定、触发的另一种形式$on(eventName,data)App.vue组件<template> <div class="todo-container"> <div class="todo-wrap"> <!--<TodoHeader @addTodo="addTodo"/>--> ...

2020-02-20 15:07:02 44

原创 Vue_自定义事件1

事件有两个方面:一个是绑定监听,一个是触发事件或者分发事件使用#v-on绑定自定义事件<my-component v-on:my-event="doSomething"></my-component>每个Vue实例都实现了事件接口,即:1.使用$on(eventName)监听事件2.使用$emit(eventName,optionPayload)触发事...

2020-02-19 09:32:23 39

原创 Vue_编写项目

页面三要素:html,js,css组件:组件是页面的局部功能模块,可以包括html/css/js/img等(视情况而定),这些资源是组件的组成部分vue项目入口js,main.js一般会有一个根组件App.vue,放在src的根目录下index.html需显示的页面文件<!DOCTYPE html><html lang="en"><head&...

2020-02-18 11:41:50 74

原创 Vue_路由的理解

路由器:路由器管理路由,VueRouter()用来创建路由器的构造函数new VueRouter({ //多个配置项})路由:其实就是一种映射关系,键值对K-VK:pathV:前台路由:组件 后台路由:处理请求的回调函数routers:[{ //一般路由 path: '/about', component: About ...

2020-02-13 10:17:55 42

原创 Vue_过滤器

理解过滤器1) 功能: 对要显示的数据进行特定格式化后再显示2) 注意: 并没有改变原本的数据, 可是产生新的对应的定义和使用过滤器1) 定义过滤器 Vue.filter(filterName, function(value[,arg1,arg2,...]){ // 进行一定的数据处理 return newValue }...

2020-02-13 10:15:26 56

原创 js中var、let和const的区别

js中定义变量常用有三种方式var、let和const;三者之间的区别如下:1.var定义的变量可以修改,如果不初始化会输出undefined,不会报错。var a = 1;// var a;//不会报错console.log('函数外var定义a:' + a);//可以输出a=1function change(){a = 4;console.log('函数内var定义a:...

2020-02-12 12:48:06 43

原创 Vue_动画

动画的理解1) 操作 css 的 trasition(过渡) 或 animation(动画)2) vue 会给目标元素添加/移除特定的 class3) 过渡的相关类名 xxx-enter-active: 指定显示的 transition xxx-leave-active: 指定隐藏的 transition xxx-enter/xxx-leave-to: 指...

2020-02-12 10:05:02 60

原创 Vue_生命周期

今年这个年关过的紧张兮兮,疫情肆虐,咱蜗居就是为国家做贡献啦...既然不能出门,那只有打开电脑,学习使我快乐了.../(ㄒoㄒ)/~~最近正在学习前台框架vue,边学边笔记,也和大家一起分享一下觉得生命周期这一块还是挺重要的,而且对于我个人而言还是比较容易忽视的,做个笔记记录一下,嘿嘿下图展示了实例的生命周期:vue的生命周期分三个阶段:初始化显示、更新显示...

2020-02-09 21:54:06 711

原创 Vue_计算属性和监视

已经踏上复工的路途,到达小窝开始自我隔离中,不能外出那咱们就安心的继续学习吧( ̄▽ ̄)"最近正在学习前台框架vue,边学边笔记,O(∩_∩)O今天学习到计算属性和监视,顺便记录一下计算属性:1) 在 computed 属性对象中定义计算属性的方法2) 在页面中使用{{方法名}}来显示计算的结果计算属性高级:1) 通过 getter/setter 实现对属性数据...

2020-02-09 21:49:43 66

原创 Vue_初接触

年关已过,虽然现在疫情依然肆虐,但是相信我们离胜利已经不愿啦...最近正在学习前台框架vue,边学边笔记,O(∩_∩)OVue是一套用于构建用户界面的渐进式框架Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。Vue遵循MVVM模式M:model,即模型,可以理解为固定格式var vm = new V...

2020-02-09 21:46:12 609

空空如也

空空如也

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

TA关注的人 TA的粉丝

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