自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(178)
  • 资源 (15)
  • 收藏
  • 关注

原创 spring4.0事务超详细源码解析

spring4.0事务超详细源码解析

2022-08-05 19:36:47 295 1

原创 spring bean实例化过成中各种初始化的顺序 beanPost顺序和时机

beanPost的先后顺序

2022-07-11 11:25:03 228

原创 Spring 单例创建流程

spring如何解决单例循环依赖的问题

2022-07-08 15:51:42 321

原创 SpringAop 流程源码阅读

spring aop 由来,概念,类图,流程,源码解析

2022-07-08 15:37:03 270

原创 java jdk动态代理流程

jdk动态代理一些细节和思考

2022-07-05 18:08:44 198

原创 百分位(P95,P99)统计awk脚本

通过awk脚本对数据进行统计分布,查看百分位数据,平均值,方差

2022-07-05 10:01:03 1482

原创 20210821-周末活动

dubbo ExtensionLoader 详解dubbo SPI 对比SPring的SPI实现了IoC(自动注入)、 AOP(切面,使用Wrap 包装类通过装饰器模式实现), 根据条件使用相应的服务主要注解@Adaptive 实现了自动适配, 同一个接口的多个实现类,但是每次调用的时候只能使用其中的一个@Active 主要用于AOP,实现了自动激活,一次调用,可以使用多个实现类似于AOP,可以排序, 有group , Before, after@Wrapper 封装类类似于AOP可以排序,

2021-08-08 17:48:04 208

原创 天津旅游攻略

天津旅游攻略2021.05.29周六-第一天出发时间始发地目的地出行方式距离(km)(耗时上午 9点北京南站天津站高铁30分钟上午 9:30天津站五大道公交、骑行3.420-40分钟上午 10:10游玩2小时上午 12:10五大道意式风情街公交、骑行3.420-40分钟下午 1:00逛街吃饭2-3个小时下午 4:00意式风情街古文化街步行110分钟下午 4:10找小吃3个

2021-05-22 22:58:43 417 1

原创 mysql-innodb-解密专栏

innodb 揭秘从逻辑和物理的角度分析, sql语句。基于mysql8.0目录结构mysql8.0结构配置配置获取create database创建数据库的时候发生了什么create table创建表的时候都做了哪些操作呢insert record插入一条记录的时候怎么保证一致性呢delete record删除记录的时候并不会直接删除记录update record修改记录的时候的如何加锁保证一致性query records查询会使用索引吗?...

2021-01-17 20:50:25 233 1

原创 config

mysql 的各种配置,文件路径dataDir# 文件路径show variables like '%datadir%';# 独立表空间show VARIABLES like 'innodb_file_per_table'## 这个目录就是mysql配置的根目录## binlog## undo log ## redo log

2021-01-17 20:39:16 209

原创 dirStruct

mysql 8.0目录结构mysql8.0中,innodb的共享表空间中的, redolog、undolog、double write 都从共享表空间中拆分出来了,拆分之后可以单独管理控制,不会相互影响, 我理解是一个解耦,随着硬件、技术的发展以前的一些优秀设计已经成为了今天的束缚。一个新的mysql数据库文件系统,文件列表1, double wirte 写文件,不再限制大小,之前是每个文件1m,现在可以通过参数设置。#ib_16384_0.dblwr#ib_16384_1.dblwrMac

2021-01-17 20:38:44 200 1

原创 queryRecords

查询条记录逻辑sql语句1, select * from t where nornal_key = 100;2, select * from t where uk=100;3, select * from t where a=100;4, select * from t where a>100;锁范围分析语句1-4,是不存在锁的,如果需要加锁可以通过 在语句后添加 for update (排他锁), in share mode 共享锁。但是不管家哪个锁,只要修改数据,会给修

2021-01-17 20:38:04 543

原创 updateRecords

修改一条记录逻辑sql语句1, UPDATE t set b=1000 where nornal_key = 100;2, UPDATE t set nornal_key=1000 where uk=100;3, UPDATE t set nornal_key=1000 where a=100;4, UPDATE t set nornal_key=1000 where a>100;因为数据库会自动添加事务所以等价于BEGINUPDATE t set nornal_key=1000;

2021-01-17 20:37:32 451

原创 deleteRecord

#删除一条语句逻辑sql语句delete from t SELECT whre a= 100;逻辑上记录删除记录隔离性删除的记录在 REPEATABLE READ 隔离级别下是继续可以看到的但是在 read Commit隔离级别下,是不可以看到的。数据库锁只要是对表记录的修改,会自动一个添加一个事务,即使不显示的声明,mysql 也会给你加上一个事务所以insert 语句自动加锁, 如果这个时候有人执行了 select for update 操作,或者修改操作导致范围加锁则会导致

2021-01-17 20:36:58 1018

原创 insertRecoed

插入一条语句逻辑sql语句insert into t SELECT 100,100,100,100;逻辑上记录逻辑上记录是线性存储,其顺序按照主键的大小进行顺序存储。隔离性新增的记录在 REPEATABLE READ 隔离级别下是无法看到的。但是在 read Commit隔离级别下,是可以看到的。数据库锁只要是对表记录的修改,会自动一个添加一个事务,即使不显示的声明,mysql 也会给你加上一个事务所以insert 语句自动加锁, 如果这个时候有人执行了 select for upda

2021-01-17 20:36:29 211

原创 create table

create table揭开create table的面纱从逻辑上分析create table 语句DROP TABLE IF EXISTS `t`;CREATE TABLE `t` ( `a` int NOT NULL, `b` int DEFAULT NULL, `uq` varchar(255) DEFAULT NULL, `nornal_key` int DEFAULT NULL, PRIMARY KEY (`a`), UNIQUE KEY `uq_key_c` (`

2021-01-17 20:35:17 6633

原创 Spring 请求添加 cache

Spring 添加 Etag标签 /** * Etag * @return */ @Bean public FilterRegistrationBean filterRegistrationBean () { ShallowEtagHeaderFilter eTagFilter = new ShallowEtagHeaderFilter(); //设置为weakETag,默认为false // eTagFilter.setWriteWeakETag(t

2020-12-08 20:16:26 275

原创 mavn依赖报错终极解决方案

mavn依赖报错终极解决方案找到自己配置的远程mvn仓库地址首先检查自己的nvn的 m2目录下的 settings.xml文件中的https://mvnrepository.com/这个url就是mvn仓库的地址。通过远程url查看报错的依赖是否存在通过依赖的 groupId,artifactId,version唯一确定一个jar包<!-- https://mvnreposit...

2020-03-11 11:48:29 774

原创 redis 5.08更新对比

cluster 记录redis cluster是如何实现,从数据一致性(主从复制一致性、事物一致性)节点hash一致性、重新分片、故障转移,从数据结构的角度来理解redis设计思路和实现。主从复制同步slave服务器收到slave of ip port之后,把ip port设置成自己的客户端,经过权限验证、等一系列操作之后,发送psync命令给master,第一次进行同步maste...

2020-03-10 17:47:51 368

原创 mysql root有grant权限但是无法进行授权

mysql 权限配置keymysql, 授权, 新增, root有grant权限但是无法进行授权警告如果部署Mysql的服务器是外网可以访问的,则强烈建议不要使用默认的3306端口,还有就是root账号禁用或者设置为只能从本地登录.不然很容易被攻击.flush privileges;命令和 source /etc/profile 效果一样, 只不过是更新msql的设置特殊语法# ...

2019-11-28 17:47:45 5000

原创 js处理科学计数法

js处理科学计数法使用js自带的Number函数就可以使用Number.toFixed cellValue = 4.0E-12 cellValue = Number(cellValue).toFixed(precision); 输出:以下是再chrom的调试模式下的console里面的输出 Number(4.0e-12).toFixed(12) "0.0000000000004...

2019-11-05 15:18:37 6781

原创 基于drools的优惠券设计

droolskeydrools,优惠券,表达式引擎,教程introduceDrools引擎,是一个面向对象规则引擎,使用java对RETE算法的实现,大概思路是每个规则的条件就是一个个节点,把所有的节点进行组合,然后进行匹配。具体的介绍可以看官方的教程文档,不过官方文档感觉写的很一般那,所以 以下是两个比较好的介绍使用drools引擎的网站。https://training-cour...

2019-10-24 12:29:59 2070

drools优惠券

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...

2019-10-24 12:27:31 489

原创 java Docker

dockerdocker是一个基于线程的容器,所以是一个轻量级的容器,适合一个服务一个容器,docker容器是基于image镜像的在镜像文件的基础上创建容器,启动容器之后,容器运行相应的命令提供服务。总体可以理解为使用dockerfile作为配置文件生成一个镜像文件–》容器文件–》服务。每个过程都有相关的命令,具体如下详细的docker教程,https://yeasy.gitbooks....

2019-10-21 16:22:19 203

原创 Linux 系统好用的截图软件和微信一样好用

1gihub地址https://github.com/lupoDharkael/flameshot#installation安装根据自己的系统看看是否支持直接安装,如果不支持则通过下面的compile进行编译源代码安装。使用安装成工之后,在命令行运行flameshot gui看看有没有截图效果出现,如果就是成功了。设置快捷键在快捷键设置里面,添加一个新的快捷键...

2019-03-11 11:01:50 1094

原创 java从第三方就接口获取数据的

1 封装参数 /** * 这里封装了对于分页记录的处理,totalPaht是返回的json数据中总条数的路径,如果没有翻页 该参数设置为null即可 * 目前只支持json数据格式 * @param para 参数集合 * @param url 接口的地址 * @param totalPath 总条数的json路径,默认返回的是jso...

2019-03-04 16:37:37 8891

原创 检查参数是否为空

java 检测参数是否为空 public static void checkArgumentNull(Object... args) { boolean flag = true; for (Object key : args) if (ObjectUtils.isEmpty(key)) flag = fal...

2019-03-04 15:55:17 949

原创 对比 字符串中包含的数字部分是否相等,数字部分在字符串的开头

/** * 对比 s1 和 s2数组各个偏移量对应的字符是否相等 * @param s1 * @param s2 * @return */ public static boolean isEqual(String[] s1, String[] s2) { checkArgumentNull(s1, s2); ...

2019-02-15 17:51:05 361

原创 对比两个map生成差异记录

使用场景对比本地数据和第三方数据的差异,差异分为三种:修改、删除、添加,其中添加参数差异对比把参数互换即可得到删除差异。其中用到的针对数字对比的函数在下面的链接中。/*** 数据差异对比, 修改前项,修改后 */ public static final String DIFF_BEFORRE_SQL = "before"; public static final String...

2019-02-15 17:27:53 4973 4

转载 map和实体类互转

/** * List&amp;lt;Map&amp;gt;转成实体对象 * @param list map实体对象包含属性 * @param clazz 实体对象类型 * @param flag map的key是下划线(和数据库字段名称一致)命名则为true,key是驼峰命名则为false * @return */ public stati...

2019-02-15 16:23:48 8762 2

原创 Java驼峰命名 下划线命名 互转

使用场景sql字段转为java字段,直接从数据库通过sql语句取出来的数据都是数据库字段,如果需要反射实例化对象则需要把从下划线命名转为驼峰命名。/*** * 下划线命名转为驼峰命名 * * @param para * 下划线命名的字符串 */ public static String UnderlineToHump...

2019-02-15 16:04:07 2282

原创 _blocking_errnos = {errno.EAGAIN, errno.EWOULDBLOCK} pip

shadowsock centeros 安装pip的时候报下面的错误 python2.6 get-pip.py 报错下面的错误_blocking_errnos = {errno.EAGAIN, errno.EWOULDBLOCK} pip解决方案:# 1, 从官方github获取具体版本的pipwget https://raw.githubusercontent.com/pypa/ge...

2019-01-23 14:45:08 9423 2

转载 ubuntu18.4 run in low graph model

修改完/var的权限之后出现ubuntu18.4 run in low graph model错误这是由于修改了权限导致的sudo chown lightdm:lightdm -R /var/lib/lightdmsudo chown avahi-autoipd:avahi-autoipd -R /var/lib/avahi-autoipdsudo chown colord:colord ...

2019-01-02 09:40:24 528

原创 AES

目录1. Why 31.1 EDS的缺点 31.2 AES的优点 42. What 52.1 AES的出现 52.2 AES加解密流程图 52.3 扩展密钥 62.4字节替代 72.5 行位移 82.6 列混淆 82.7 轮密钥加 103 How 123.1 扩展密钥 123..2字节替换 133.3 行移动 133.4 列混淆 143.5 轮密钥加 154....

2018-12-27 09:27:15 1348

原创 获取当前季度的前一个季度算法

String[] quarter = {"一" ,"二" ,"三", " 四"}; int n = LocalDate.now().getMonthValue(); n = ((n-1)/3 + 3)%4 + 1; System.out.println(quarter[n-1]);

2018-12-26 12:29:50 5205

原创 maven 一次打包多个maven项目

maven 一次打包多个maven项目。使用场景一个项目由多个子项目组成,每个子项目也是一个maven项目。每次打包需要打包每个子项目,很麻烦,其实可以通过配置一个顶级的pom.xml文件来解决这个问题,只需要打包顶层的maven项目,即可。如果一个项目有多个子项目的pom.xml文件,比如我的项目路径是这样的,项目结构如图,如果没有一个总的pom文件,则不能一次打包多个maven项目。总的...

2018-11-19 22:33:38 6511

原创 jenkins配置,一键打包,备份,部署多服务器,多环境启动

jenkins配置1 安装插件系统管理-&amp;gt;插件管理 插件:Maven Integration plugin,Publish Over SSH2 ssh scp 配置系统管理-&amp;gt;系统设置 ssh server 配置:如果用的是统一的key或者密码,则配置一次就可以了。如果每个服务器密码都不一样,需要点击高级按钮,把复选框 Use password authentic...

2018-11-19 22:27:51 13418

转载 java8 新特性

java8 新特性1. list 排序,单条件,多条件,反转List&amp;lt;ModelProfit&amp;gt; modelProfitList = modelService.selectModelProfitByProposalId(queryP.getProposalId());modelProfitList.sort(Comparator.comparing(ModelProfit::ge...

2018-11-19 20:04:42 235

原创 spring boot,yml文件配置的自己见解

关于spring boot,yml文件配置的自己见解使用场景如果项目中存在大量重复的代码,大量重复指的是大量的if else 或者逻辑上的大量判断就不要在程序里面进行处理了,这样不仅造成代码的兼容性很低,而且可读性更低,维护代价巨大无比。通过java万物皆对象的思想,把这些数据进行抽象到配置文件中,然后通过读配置文件来进行处理。这样如果有新的模型需要处理,添加配置文件或者修改配置文件就...

2018-11-18 11:18:29 2528

原创 根据excellent 自动生成table ,通过输入开始坐标和结束坐标

自动生成excell的 position使用场景使用页面生成,excell大量单元格,成千上百的量。如果量小就没必要使用。要做Excell的table,而且要显示值,通过给td标签,添加一个postion(值是excell单元格位置)属性 来实现对大量table的赋值。具体代码地址https://github.com/Notelzg/javaReview/tree/master/work/...

2018-11-18 11:15:47 483

idea vim 快捷键设置配置导出

idea快捷键设置

2022-10-09

coupon-service.zip

基于drools的优惠券设计,经过测试确实是可行的,但是由于drools本身特性,规则创建比较复杂。

2019-10-24

excel-tools.zip

表达式引擎把excell函数使用java解析,就是把字符串计算函数,"a+b" 解析并且计算结果。

2019-10-24

UkeyKit 工具

类似于,老毛桃的,通过选择u盘,向u盘的pbr写入grub4dos的引导代码 里面调用的是。grubinst.exe 的命令行,然后自己写的界面,主要是有个 项目要对u盘进行一系列的操作,然后自己在网上搬砖然后写的,没啥计数含量 不过,grub4dos 和grubist 都是有源码的,有兴趣的可以研究一下。 grubisnt.exe 在源码目录下面,程序使用的话,需要把grubisnt.exe 拷贝到 UkeyKit.exe 同一个目录下面的一个config文件夹里面,因为程序里面写的是这样的路径,可以根据自己的需求改自己

2016-08-04

自定义 window7 登陆

自定义window7登陆,32 64位

2016-04-20

chrome_wndow+switchomega+bak

window平台下的chrome浏览器 用于配置代理插件

2016-01-27

chrome+switchomega+bak文件

chrome+switchomega+bak文件 用户ubuntu下面配置chrome浏览器switchomega

2016-01-27

基于DAC的文件管理系统的android实现

基于DAC的文件管理系统的android实现,就是一个app 模拟dac的实现原理

2016-01-25

修改xp系统下登录界面报告

修改xp系统下登录界面报告,里面包含了,实现的原理和具体实现方法

2015-12-13

修改xp系统下登录界面源码

使用gina 实现自己的xp 登陆界面 自己写的代码 比较简洁

2015-12-13

java 简单的资源管理器基于Windows

自己用java se 实现的一个简单的资源管理器

2015-12-13

DES java实现 只是简单的对string的加解密

DES 的java实现 因为是课程作业所以只是写的一个简单的 对string的 加解密

2015-12-02

AES 对所有格式文件加解密

用java实现的,密钥长度为128的AES算法,并且支持任意格式的文件!

2015-12-02

AES 对txt doc jpg格式加解密

使用java实现了AES 128长度密钥的 加解密,并且支持不同的文件格式。

2015-12-02

AES 的对txt格式的加解密

使用java实现了AES高级加密算法,当然了我只实现了128的密钥加密,并且是针对txt的

2015-12-02

2015北京工业大学2015年计算机学院真题(专硕学硕是图片)

2015北京工业大学2015年计算机学院真题(专硕学硕是图片)

2015-10-10

空空如也

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

TA关注的人

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