- 博客(19)
- 收藏
- 关注
原创 Mybatis3.X原理分析
Mybatis3.X原理分析前言Mybatis整体架构图这里对Mybatis的主要包含两部分 一部分是对 mapper-config.xml 的解析一部分是Mybatis的运行过程。解析Mapper-config.xml通过XMLConfigBuilder解析主配置文件中配置的各种属性,插件private void parseConfiguration(XNode root) { try { //issue #117 read properties first //解析pr
2020-08-19 15:44:21 238
原创 Elasticserach使用总结
Elasticserach使用总结前言Elasticsearch官网dochttps://www.elastic.co/guide/en/elasticsearch/reference/6.0/getting-started.htmlSpring Data Elasticsearchhttps://docs.spring.io/spring-data/elasticsearch/docs/3.2.9.RELEASE/reference/html/#core.web.basic.domain-cla
2020-08-17 10:48:30 367 1
原创 Redisson使用
Redisson 使用概述Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。它不仅提供了一系列的分布式的Java常用对象,还提供了许多分布式服务。其中包括(BitSet, Set, Multimap, SortedSet, Map, List, Queue, BlockingQueue, Deque, BlockingDeque, Semaphore, Lock, AtomicLong, CountDownLatch, Publish /
2020-08-17 10:26:14 1778
原创 ShardingSphere 事务
ShardingSphere 注意事项1:数据修改不可修改分区键2:在配置关联表的关联关系是数组不是字符串。ShardingSphere 事务本地事务完全支持非跨库事务,例如:仅分表,或分库但是路由的结果在单库中。完全支持因逻辑异常导致的跨库事务。例如:同一事务中,跨两个库更新。更新完毕后,抛出空指针,则两个库的内容都能回滚。不支持因网络、硬件异常导致的跨库事务。例如:同一事务中,跨两个库更新,更新完毕后、未提交之前,第一个库宕机,则只有第二个库数据提交。两阶段事务-XAJava通过定
2020-08-16 20:36:01 3456 1
原创 springcloud学习笔记(一)常用的五大组件
springcloud 与微服务微服务是一个小的、松耦合的分布式服务,微服务允许将一个大型的应用程序分解为具有严格职责定义的便于管理的组件,微服务通过将大型代码分解为小型的精确定义的部分,帮助解决大型代码库中传统的负载问题。springcloud是微服务架构的集大成者,将一系列优秀的组件进行了整合。基于springboot构建。这里将介绍springcloud中常用的组件。服务发现——Net...
2020-08-16 20:26:50 342
原创 springboot aop 使用记录
参考链接https://blog.csdn.net/lmb55/article/details/82470388https://www.jianshu.com/p/61f9d7348218https://www.cnblogs.com/onlymate/p/9630788.html相关概念1.方面(Aspect)定义切面@Aspect2.连接点(Joinpoint)3.通知(Advi...
2020-08-16 20:26:08 171
原创 Mysql引擎
Mysql引擎Mysql引擎有:MyISAM、InnoDB、 Archive、ASV、Memory、NDB集群MyISAM:对于读取操作较多的应用有较好的支持特点:1)不支持行级锁,也就是说任何操作都对整张表加锁。2)不支持事务,无法回滚,崩溃后无法安全恢复。3)支持全文索引、压缩、空间函数等MyISAM设计简单,数据以紧密格式存储,在某些场景下性能很好,但它最典型的问题还是表锁。InnoDB:InnoDB是MySQL使用率最高的存储引擎,目前市面上至少95%的MySQL采用该存储引擎,
2020-08-16 20:25:26 273
原创 nginx反向代理与动静分离实践
反向代理与正向代理的区别正向代理: 一般的访问流程是客户端直接向目标服务器发送请求并获取内容,使用正向代理后,客户端改为向代理服务器发送请求,并指定目标服务器(原始服务器),然后由代理服务器和原始服务器通信,转交请求并获得的内容,再返回给客户端。正向代理隐藏了真实的客户端,为客户端收发请求,使真实客户端对服务器不可见;举个具体的例子 ????,你的浏览器无法直接访问谷哥,这时候可以通过一个代理服务器来帮助你访问谷哥,那么这个服务器就叫正向代理。反向代理: 与一般访问流程相比,使用反向代理后,直接收到请
2020-08-16 20:24:21 155
原创 Volatile
volatile 关键字的主要作用就是保证变量的可见性然后还有一个作用是防止指令重排序。并发编程的特性:原子性 : 一个的操作或者多次操作,要么所有的操作全部都得到执行并且不会收到任何因素的干扰而中断,要么所有的操作都执行,要么都不执行。synchronized 可以保证代码片段的原子性。可见性 :当一个变量对共享变量进行了修改,那么另外的线程都是立即可以看到修改后的最新值。volatile 关键字可以保证共享变量的可见性。有序性 :代码在执行的过程中的先后顺序,Java 在编译器以及运行期间的优化
2020-08-16 20:23:26 136
原创 springboot2.2.X集成quartz并进行持久化
什么是quartzQuartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,完全由Java开发,可以用来执行定时任务,类似于java.util.Timer。但是相较于Timer, Quartz增加了很多功能:持久性作业 - 就是保持调度定时的状态;作业管理 - 对调度作业进行有效的管理;quartz入门*参考网址:*https://www.w3cschool.cn/quartz_doc/quartz_doc-2put2clm.html添加quartz依赖
2020-08-16 20:22:54 763
原创 synchronized解析
synchronizedsynchronized关键字解决的是多个线程之间访问资源的同步性,synchronized关键字可以保证被它修饰的方法或者代码块在任意时刻只能有一个线程执行。另外,在 Java 早期版本中,synchronized属于重量级锁,效率低下,因为监视器锁(monitor)是依赖于底层的操作系统的 Mutex Lock 来实现的,Java 的线程是映射到操作系统的原生线程之上的。如果要挂起或者唤醒一个线程,都需要操作系统帮忙完成,而操作系统实现线程之间的切换时需要从用户态转换到内核态
2020-08-16 20:21:13 133
原创 ShardingSphere4.1 + seata1.2+Nacos + Mybatis+springboot.2.2.8.RELEASE
前言再进行使用seta前务必先看各个版本的参数差异http://seata.io/zh-cn/docs/user/configurations.html注意事项seta-server 版本1.0之前和之后略有不一样使用时需注意配置参数有所修改具体请看http://seata.io/zh-cn/docs/user/configurations.htmlseta版本和引入依赖版本必须一致否则可能会导致 no available service 'null' found, please make
2020-08-16 20:20:09 1395
原创 ConcurrentHashMap源码分析(jdk8)
前言 数组+链表+红黑树 CHM是一个线程安全的Map集合。这里主要分析以下内容。初始化Map插入元素扩容机制链表转红黑树元素统计读前 首先了解一下用到的几个ConcurrentHashMap几个内部类。Node链表节点TreeNode红黑树节点CounterCell用于计算元素个数ForwardingNode用于扩容时占位SIZECTLSIZECTL ==-1 表示有线程正在初始化MapSIZECTL < -1 表示有线程正在扩容
2020-08-15 11:03:52 195 1
原创 nginx安装以及nginx负载均衡配置
linux nginx 安装安装步骤1:安装nginx需要的安装依赖yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel2:下载nginx压缩包并进行解压cd /usr/localmkdir nginxcd nginx//下载tar包wget http://nginx.org/download/ng...
2019-08-14 20:21:24 161
原创 jvm学习笔记(1)
首先区分jdk和jre的区别jdk:jdk是用于java程序开发的最小环境,包含java程序设计语言,java虚拟机,javaAPI类库。JRE:jre是支持java程序运行的标准环境,包含java虚拟机以及javaAPI类库中的Java SE API子集第二章 运行时数据区域方法区:是各个线程共享,它用于存储已被虚拟机加载的类信息,常量,静态常量,即时编译器编译后的代码等数据。运行时常...
2019-05-04 15:00:02 139
原创 spring boot 自定义配置
Spring Boot自动配置自带了很多配置类,每一个都能运用在你的应用程序里。它们都使用了Spring 4.0的条件化配置,可以在运行时判断这个配置是该被运用,还是该被忽略。spring boot 自定义配置文件可以有多种途径:1:命令行参数2: java:comp/env里的JNDI属性3:JVM系统属性4: 操作系统环境变量5: 随机生成的带random.*前缀的属性(在设置其...
2019-04-09 20:20:40 228
原创 redis-5.0.4集群搭建
单机redis搭建1:环境描述 操作系统 :centos7 、 gcc版本 :gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) redis版本:redis-5.0.42:redis搭建...
2019-04-09 20:16:58 1378
原创 js使用页面打印window.print() 记录,并进行缩放打印
//打印 print:function(){ //获取打印的页面内容 let subOutputRankPrint = document.getElementById('print-div'); let newContent = subOutputRankPrint.innerHTML; let oldContent = document.bod...
2018-11-04 18:07:13 18593 3
原创 有关java Collections工具类的使用中 Collections.sort的使用
sort 简介:Collections.sort 的排序默认是升序排序,采用的是快速排序的算法
2018-10-30 14:46:31 196
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人