自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

原创 liunx替换

方法一 使用perl ,命令如下:find -name '要查找的文件名' | xargs perl -pi -e 's|被替换的字符串|替换后的字符串|g'方法二 使用sed命令如下:方法二 使用sed命令如下:sed -i "s/原字符串/新字符串/g" `grep 原字符串 -rl 所在目录`方法三 使用shell ,命令如下:grep "abc" * -R | awk -F: '{print $1}' | sort | uniq | xargs sed -i 's/ab

2022-04-24 11:10:15 382

原创 Java学习博客-总结

一、Redishttps://www.cnblogs.com/guolianyu/p/10172688.html

2020-02-17 16:49:10 189

原创 Docker学习六-txManager配置

TxManager  txManager是分布式事务LCN模式的事务控制方,TxManager将根据事务最终状态和事务组的信息来通知相应的参与模块提交或回滚事务,并返回结果给事务发起方;LCN模式是通过代理Connection的方式实现对本地事务的操作,然后在由TxManager统一协调控制事务。当本地事务提交回滚或者关闭连接时将会执行假操作,该代理的连接将由LCN连接池管理。  工作中一直对...

2019-12-20 16:35:19 1236

原创 Docker学习五-一些常用命令

启动一个镜像docker run -p 3309:3306 --name mysql02 -v D:\Docker\mysql\mysql02\mysqld.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6查看日志docker logs -f -t --tail 100 dat...

2019-12-20 14:27:02 234

原创 Docker学习四-配置SonarQube

1、拉取数据库SonarQube默认使用的PostgreSQL数据库,PostgreSQL也是一个关系型数据库。docker pull postgres2、拉取SonarQubedocker pull sonarqube3、启动PostgreSQL  在docker容器中配置启动PostgreSQL,创建一个数据库db_sonar,并创建用户、设置密码:docker run ...

2019-12-17 14:12:11 522

原创 Spring 单元测试-PowerMockRunner和SpringRunner

概述  我们在开发过程中,为了代码的稳定性也好,为了少给自己以后的开发挖坑也好,多写单元测试绝对是一件性价比超高的繁琐事,既然是繁琐的事情,我想大部分人是不愿意写的,我也不愿意写,但是要做好一个程序员,不仅仅的去做一个低级码农,那就从最简单的地方做起,单元测试就是一件特别简单的事。写了单元测试的代码的健壮性和逻辑性绝对要更上一个层次,而且对于开发而言理解回顾代码逻辑是一件必不可少的事情  一个...

2019-12-16 19:48:06 9989 1

原创 Docker学习三-容器内网通过独立IP直接访问

Docker学习一-MySQL主从热备 https://blog.csdn.net/rajayu/article/details/88815814Docker学习二-MySQL双主互备 https://blog.csdn.net/rajayu/article/details/88840234docker for windows 容器内网通过独立IP直接访问的方法  Docker官方推荐我...

2019-04-01 17:54:44 2949 4

原创 Docker学习二-MySQL双主互备

原理说明  热备份指的是:High Available(HA)即高可用。第一种,双机热备它的工作原理是使用两台服务器,一台作为主服务器(Active),运行应用系统来提供服务。另一台作为备机,安装完全一样的应用系统,但处于待机状态(Standby)。当Active服务器出现故障时,通过软件诊测将Standby机器激活,保证应用在短时间内完成恢复正常使用;第二种,双机互备方式则是在双机热备的基础上...

2019-03-27 16:47:47 1370

原创 Docker学习一-MySQL主从热备

环境要求win10系统,或者Linux系统做参考docker for windows, win10以上电脑才可使用mysql5.7,可以只安装MySQL Server,也不是必需品Navicat  一直知道docker是个神奇的东西,想要学习下使用,去年的时候,安装windows版本的docker还是会有一大堆问题,启动的时候就会出一大堆问题,而现在新版本的docker已经完全没有问...

2019-03-26 11:53:28 744

原创 Spring事务-代理模式导致事务不回滚问题分析

说明  首先我们都了解事务为什么回滚,回滚的原因是什么。默认情况下,事务只有遇到运行期异常时才会回滚,而在遇到检查型异常时不会回滚。  我们看下事务不回滚的情况,这样更方便我们了解Spring事务。第一种,我们看下检查型异常导致的不回滚,第二种我们看下动态代理问题导致的事务不回滚。检查型异常不回滚...

2019-03-22 15:21:07 403

原创 Spring事务

一、Spring事务  我相信看这篇文章的人对事务都有一定的了解了,在这里不多做赘述,在这里再贴下事务的四个特性,做一次回顾:ACID原子性(Atomicity):事务是一个原子操作,由一系列动作组成。事务的原子性确保动作要么全部完成,要么完全不起作用。一致性(Consistency):一旦事务完成(不管成功还是失败),系统必须确保它所建模的业务处于一致的状态,而不会是部分完成部分失败。在现...

2019-03-22 10:31:11 131

原创 Java面试一

一、Integer a = 10; Integer b = 10; a=b是否相等。 int缓存池,相等。二、equals和hashcode方法?***equals():***反映的是对象或变量具体的值,即两个对象里面包含的值–可能是对象的引用,也可能是值类型的值。***hashCode():***计算出对象实例的哈希码,并返回哈希码,又称为散列函数。根类Object的hash...

2019-03-14 17:21:32 598

原创 网络-DNS处理顺序

DNS缓存  上文中我们知道了DNS到底是个什么样的东西,现在我们来看下DNS缓存,为什么会有DNS缓存呢?这是为了解决频繁的访问DNS服务器,直接在本地进行缓存服务器IP地址的策略,这样我们输入一个网址域名譬如:www.baidu.com,就用再到DNS服务器去获取对应的网址的IP地址,直接从本地获取IP地址去做请求。  几种DNS缓存:  浏览器DNS缓存  本地计算机DNS缓存DN...

2019-03-13 12:39:14 2213

原创 网络-DNS浅说

域名系统  Domain Name System,缩写是DNS,顾名思义,是处理域名的,域名就是我们的网址,譬如www.baidu.com,我们直接输入这个网址如果没有域名系统解析式无法直接访问到百度的服务器的,能访问百度的服务器必须是百度的IP地址,而IP地址就是192.168.111.10这样的数字,特别不方便记忆,域名系统就是为了方便我们记忆,当我们输入域名的时候,其实是要去访问一个服务器...

2019-03-13 10:16:18 306

原创 Java面试二

1.什么是幂等性?一次和多次请求某一个资源对于资源本身应该具有同样的结果(网络超时等问题除外)。也就是说,其任意多次执行对资源本身所产生的影响均与一次执行的影响相同。这里需要关注几个重点:幂等不仅仅只是一次(或多次)请求对资源没有副作用(比如查询数据库操作,没有增删改,因此没有对数据库有任何影响)。幂等还包括第一次请求的时候对资源产生了副作用,但是以后的多次请求都不会再对资源产生副作用。...

2019-02-20 18:49:33 135

原创 秒杀系统

2019-01-08 22:45:06 123

原创 事物和锁的笔记

事物隔离级别:读未提交 (另一个事物未提交的修改在当前事物中也能看到),读已提交 ,可重复度 (同时开启的事物,另一事物的修改已提交,当前事物看不到),串行锁DML锁(数据库管理语言):insert updateDDL锁(数据库定义语言):create table,alter tableDCL 数据库控制语言:grant commitDQL 数据库查询语言:selectDML锁...

2019-01-08 22:43:11 124

原创 浅谈适配器模式

适配器模式  将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。定义:将一个接口转换成客户希望的另一个接口,使接口不兼容的那些类可以一起工作,其别名为包装器(Wrapper)。适配器模式既可以作为类结构型模式,也可以作为对象结构型模式。  适配器模式根据实现方式的不同分为类适配器模式**和***对象适配器模式***,以及*...

2018-12-25 20:38:45 210

原创 浅谈状态模式

状态模式  我们在实现某一类逻辑,譬如,WIFI的打开,关闭,连接各种状态的转换时,如果我们用正常的逻辑,在代码中我们会发现很多像下面这样的条件语句:if (WIFIState.ON) { // WIFI已打开处理逻辑} else if (WIFIState.OFF) { // WIFI关闭的处理逻辑} else if (WIFIState.CONNECTED) { ...

2018-12-25 16:19:38 1026 1

原创 浅谈建造者模式

建造者模式 *** 建造者模式就是将一个个简单的对象一步步构建成一个复杂的对象。***  我们生活中有很多可以用建造者模式来解释。譬如在生产汽车的流水线作业中,我们需要先将生产汽车所需的一个一个的内部构建建造出来,例如发动机,车门,车轮,方向盘,水箱等。对于我们用户来说,我们并不需要知道这个汽车是怎么建造出来的,各个部件是怎么组装的,销售人员也不需要知道这个汽车是怎么组装建造的,我们只需要知道...

2018-12-25 12:57:49 1258 1

原创 浅谈监听器模式

监听器模式  在编程的世界中,监听无所不在,譬如你点击一个音乐播放器的播放按钮,就播放一首音乐;点击相机的拍照按钮,就拍一张照片。也就是你触发某种行为,便会执行具体的动作。  监听器模式有三个要素——事件源、事件对象、监听器。事件源: 顾名思义,事件发生的源头,比如点击的按钮,属于被监听的对象;事件对象: 这个经常和事件源混淆,它经常被用来包装事件源,切记,它毕竟是个事件,比如点击事件,和...

2018-12-24 22:32:50 4605

原创 浅谈观察者模式

观察者模式 观察者模式是使用率最高的设计模式之一,它用于建立一种对象与对象之间的依赖关系,一个对象发生改变时将自动通知其他对象,其他对象将相应作出反应。在观察者模式中,发生改变的对象称为观察目标,而被通知的对象称为观察者,一个观察目标可以对应多个观察者,而且这些观察者之间可以没有任何相互联系,可以根据需要增加和删除观察者,使得系统更易于扩展。 观察者模式(Observer Pattern):定...

2018-12-24 20:03:06 182

原创 浅谈工厂模式

工厂模式工厂模式我们分为两个方面讨论,一个是工厂模式,另外一个是spring中的工厂模式应用。工厂模式是我们最常用的实例化对象模式了,是用工厂方法代替new操作的一种模式,这里着重理解下替代new操作,一般来说对象我们需要new Object()去实例化,如果一个对象需要在构造函数中实例化,在实例化之前需要处理一大堆操作和流程,那么在创建这个对象的时候需要写一大堆代码,这样我们的构造函数看起来...

2018-12-21 15:57:31 253

原创 浅谈代理模式

##代理模式一直没太弄明白的代理模式,这次花时间弄明白下,如果有错误,希望有人看到可以纠正交流下,我理解的***代理模式就是给A对象提供一个代理B对象,B对象可以控制调用A对象的方法。***代理模式分为两种,一种是静态代理,一种是动态代理。下面我们先看下静态代理。###静态代理这里面有三个角色,百度百科都可以查到。抽象角色:通过接口或抽象类声明真实角色实现的业务方法。代理角色:实现抽象角...

2018-12-20 23:08:43 325 1

原创 SpringCloud用feign的方式将字符串用文件上传

  最近项目上碰到一个问题,需要将一个大字符串转成文件使用的feign的方式调用另一个同一个注册中心的文件处理系统,最重要的是不想在服务器上临时创建文件,如果不能及时删除会占用服务器的存储空间,如果是一个成熟的系统需要监控保存问价的这个地址来保证稳定性。所以想着使用什么方式解决这个问题。第一步,我们上传文件的接收对象都是MultipartFile,就从这个文件开始研究;文件上传的时候需要分清楚...

2018-12-03 16:09:22 777

原创 事物导致的死锁问题分析

先看异常日志代码: @Override @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = RuntimeException.class) public void updateAuthStatus(Long userId, Integer auth...

2018-12-03 15:28:52 2126

原创 关于OOM和内存回收的一点浅显的认识

Low Memory Killer在用户空间中指定了一组内存临界值,当其中的某个值与进程描述中的oom_adj值在同一范围时,该进程将被Kill掉。Android的每一个应用都是运行在一个独立的DVM中,他们之间互不影响;应用退出之后,并没有立马杀死进程,进程依然停留在内存中,这么做的目的是为了提高下次启动时的速度。而在Android中管理进程的模块是AMS,主要有LRU weight、OOM adj、Low MemoryKiller共同来完成进程的管理。

2015-10-22 14:19:23 3303 2

空空如也

空空如也

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

TA关注的人

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