自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(181)
  • 资源 (2)
  • 收藏
  • 关注

原创 Mybatis foreach性能问题

Mybatis foeach性能问题解析1. POM文件的配置<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ...

2019-04-20 13:53:29 1195 1

原创 Spring Boot 2.0

文章目录1. WebFlux1. WebFluxwebFlux和servlet容器相冲,而且,默认servlet容器的优先级比webflux高,所以,在pom.xml文件中,需要去除servlet容器相关的jar。然后,添加webflux的jar即可。...

2019-04-15 15:35:39 151

原创 JDK源码解读

StringBuffer和StringBuilder原理一样,无非是在底层维护了一个char数组,每次append的时候就往char数组里面放字符而已,在最终sb.toString()的时候,用一个new String()方法把char数组里面的内容都转成String,这样,整个过程中只产生了一个StringBuilder对象与一个String对象,非常节省空间。StringBuilder唯一的...

2019-03-18 09:25:50 607

原创 Maven SNAPSHOT作用

SNAPSHOT作用:标识这个jar是一个不稳定的jar,是一个标识版本的作用。使用了SNAPSHOT之后,maven会经常去私服或是中央仓库中拉取最新 的这个jar的版本;而没有SNAPSHOT的jar,则会从本地仓库中查找,本地不存在,才去中央仓库中拉取。更新频率:需要在setting.xml文件中进行配置。 updatePolicy: always代表经常性的去拉取最新的jar, ...

2019-02-28 08:45:42 6764

原创 多线程实战

一、线程基础:&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;线程安全&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;多个线程访问同一个资源的时候,默认是以排队的方式进行处理,而且,线程执行的顺序

2019-01-22 10:14:09 460 2

原创 Spring data jpa@query使用原生SQl,需要注意的坑

Spring data jpa @Query 使用原生Sql的坑根据代码来解说:@Query(value = &amp;quot;select bill.id_ as id, bill.created_date as date, bill.no, lawyer_case .case_no as caseNo, &amp;quot; + &amp;quot;lawyer_case .case_name as caseName...

2018-10-19 15:45:40 28601 9

原创 java -jar运行程序,但是断开服务器连接,就会关闭问题

1. nohup java -jar XXX.jar &gt;log.out &amp;;解析: 把此进程作为后台进程运行,且把日志输出到log.out文件中

2018-09-27 20:22:33 4675

原创 FASTDFS对于Spring 1.3 和1.4的文件上传大小坑

1.文件上传限制: 对于Spring1.4之前的版本:multipart:maxFileSize: 50MBmaxRequestSize: 50MB对于Spring 1.4之后的版本:spring:http:multipart:maxFileSize: 50MbmaxRequestSize:...

2018-09-27 20:18:23 954

原创 Java同一条数据,两个时间,两个时区问题;CDT和CST的坑

Java同一条数据,两个时间,两个时区问题;CDT和CST的坑项目场景:Oracle同步数据到Mysql问题描述:时间丢失一天原因分析:解决方案:项目场景:Oracle同步数据到Mysql从Oracle进行视图查询,进行数据同步,把数据全量同步到Mysql中。问题描述:时间丢失一天问题:某个字段(时间类型)查询的时候,写入的时候,数据都是正确的,但是,插入Mysql时间就少了一天。Java代码—Mapper SQL: <select id="selectMyByPage" result

2020-09-03 14:11:14 5041 1

原创 Zookeeper-初始

Zookeeper-初始1. 特性2. 环境安装3.ZK文件目录4. ZK配置:下文中出现的zooKeeper使用ZK代替。1. 特性一致性:数据一致性,数据按照顺序入库。原子性:保证所有的节点数据的一致性。单一视图:任何节点的数据都是一致的。可靠性:每次对ZK的操作日志都是存储在服务端。实时性:客户端可以实时读取到ZK服务端的最新数据。2. 环境安装先查看当前系统中是否已经安装了jdk查看系统自带jdk:rpm -qa | grep gcj查看已安装的jdk: rpm -qa

2020-07-23 11:55:04 605

原创 Mysql-索引详解

Mysql索引详解1. 为什么Mysql底层选择B+树作为数据结构?2. Mysql索引节点3. 存储引擎4. myisam存储数据相关文件:5. Myisam索引(非聚集索引)6. InnoDB索引(聚集索引)1. 为什么Mysql底层选择B+树作为数据结构?1. 二叉树:容易转换为链表。2. 红黑树:数据层数太高。(二叉平衡树)3. B+ Tree: 多叉平衡树。 索引节点是从左向右升...

2020-03-19 19:39:51 404

原创 Redis--使用场景

文章目录1. String1. 分布式锁1. SET1. 抽奖类2. 点赞类3. 关注类4. 组合条件过滤2. ZSET1. 排行榜1. String1. 分布式锁1. SET1. 抽奖类2. 点赞类3. 关注类4. 组合条件过滤2. ZSET1. 排行榜...

2020-03-19 19:38:40 213

原创 JVM面试

JVMJVM能够跨平台的原因?答案:jvm能够跨平台:是因为我们安装了不同版本环境的jdk,因此,不同版本的jdk生成了对应的机器码。虚拟机的构成?局部变量表: 用于存放局部变量操作数栈: 用于运算,操作局部变量的存储空间。动态链接: 多态方法出口:记录方法执行完,应该返回到被调用用方法的哪一行代码。方法区or元空间?jdk1.8之后就使用物理内存,不再由jvm...

2020-03-17 18:48:20 116

原创 Linux详解--常用命令

Linux详解-常用命令1. ls:查看当前目录下的文件2. cd: 切换目录3. mkdir:创建目录4. rmdir:删除目录5. rm: 删除文件6. cp: 复制文件7. 通配符('*'、'?')8.cat:文本内容显示到终端9.head:查看文件开头10. tail:查看文件结尾11.wc:统计文件内容信息。12.备份压缩一切皆文件1. ls:查看当前目录下的文件1. 常用参数 ...

2020-03-13 23:11:48 180

原创 Mysql面试题

Mysql面试题集锦1. mysql中各种log的用法以及原理1. binlog(逻辑变化)2. redo log(物理变化)3. binlog和redolog之间的差异4. undolog1. mysql中各种log的用法以及原理1. binlog(逻辑变化)定义:binlog记录了数据库表结构和表数据变更,比如update/delete/insert/truncate/create。不...

2020-03-09 12:18:30 246

原创 ThreadLocal详解

ThreadLocal详解1. ThreadLocal1. ThreadLocal定义:提供线程局部变量;一个线程局部变量在多个线程中,分别有独立的值(副本)。特点:简单(开箱即用)、快速(无额外开销)、安全(线程安全)。场景:多线程场景(资源持有、线程一致性、并发计算、线程安全等场景)。实现原理:java中使用哈希表实现。应用范围:几乎所有提供多线程特征的语言。...

2020-03-07 20:29:37 245

原创 Shell-基础知识

文章目录1. shell文件第一行`#! /bin/sh`的作用2. Shell脚本执行流程3. shell变量4. export5. Shell函数1. shell文件第一行#! /bin/sh的作用用来表示此shell脚本由什么程序去执行;若是/bin/sh,则使用bash去执行脚本;也可以是/bin/rm、/bin/more、/bin/cat等等;都会达到这些命令的作用;删除脚本、读出脚...

2019-12-06 17:58:02 236

原创 Shell-awk

文章目录1. AWK1. 基础知识2. awk常见的内建变量3. awk条件判断(&& || !)4. awk循环5. awk执行流程6. 小案列1. AWK1. 基础知识print $0的含义是打印整行,输出到stdout。-F参数设置的是awk的初始化变量FS(我们在后面的章节将讲到这个变量)。FS变量控制着awk的字段分隔符,默认情况下是空白字符。在BEGIN代码...

2019-12-06 17:57:40 123

原创 Shell-sed

文章目录1. Sed1. 基础知识2. 模式匹配3. 操作字符3. 小案列1. Sed1. 基础知识Sed号称为流编辑器。可以从管道这样的标准输入接收的数据进行处理。Sed不会修改原文件的内容。Sed是行编辑器,只能一行一行的执行。2. 模式匹配规则表达式字符字 符描述^与行首匹配$与行尾匹配.(点)与任一字符匹配*与前一个字符的...

2019-12-06 09:54:21 162

原创 Shell-判断和循环

文章目录1. 判断1. 语法格式2. 逻辑运算符3. 文件操作运算符4. Test5. Case6. 小案列2. 循环1. 判断1. 语法格式简单if … else…#! /bin/sh#simple if useage.if [ $1 -gt 15 ]; then echo ">15"else echo "<=15"fiif … elif…elif…...

2019-11-29 14:07:23 223

原创 Shell-函数基础知识

文章目录1. Shell函数1. 初识别`$#`和`$@`2. 函数使用规则3. 函数相关信息1. Shell函数1. 初识别$#和$@#! /bin/shfunc() { echo "$# paramsters" # $#: 代表传入函数的参数个数 echo "$@ values" # $@: 代表传入函数的参数}func a b c d2. 函数使用规则函数必须先...

2019-11-28 15:20:30 119

原创 Shell-变量基础知识

文章目录1. shell变量1. shell变量linux环境中使用 1. long_str="linux shell string" # 定义变量, =两边不能存在空格 2. echo ${long_str} # 引用变量;这是最安全的写法, 若使用$long_str; 可能出错. 3. echo "hello, $long_str" # 只有双引号才能转义变量;使用单引号,无...

2019-11-28 11:12:32 186

原创 Shell-tr用法

文章目录1. 命令作用2. 语法3. 常用参数4. 小案列1. 命令作用用于字符转换,替换和删除;主要用于“删除文件中控制字符”或进行“字符替换”。2. 语法处理来自文件tr '匹配字符' '替换的字符' < file.txt来自管道commands | tr '匹配字符' '替换字符'添加optiontr options '匹配字符' < fil...

2019-11-27 10:43:49 383

原创 Shell-diff用法

文章目录1. 命令作用2. 语法3. 常用参数4. 小案列1. 命令作用逐行比较,告诉我们怎么把第一个文件改为第二个文件。显示出第一个文件和第二个文件的差异。2. 语法diff [options] file1.txt file2.txt # file1为比较文件 file2为基准比较文件.3. 常用参数 -b:不检查空格 -B:不检查空白行 -i:不检查大小写 -w:忽略所...

2019-11-26 13:50:09 1171

原创 Shell-uniq用法

文章目录1. 命令作用2. 语法3. 常用参数4. 小案列1. 命令作用用于去除“连续”的行。2. 语法uniq [options] fileName.txt3. 常用参数 -i:不区分大小写 -c:统计重复的次数 -d:只显示重复行4. 小案列文件来自于 /etc/passwd;可以使用cp /etc/passwd .,复制一份到当前目录,用于测试,切记在源文件上进行操...

2019-11-26 11:19:39 467

原创 Shell-sort用法

文章目录1. 命令作用2. 语法3. 常用参数4. 小案列1. 命令作用用于排序;它将文件的每一行作为一个的那位,从首字符进行升序排列。2. 语法sort [options] fileName.txt3. 常用参数 -u:去除重复行, 只要存在重复行,都会去除掉,不管重复行是否连续。 -r:降序排列,默认为升序 -o:将排序结果输出到文件中,类似于重定向符号> -n:...

2019-11-26 10:55:41 591

原创 Shell-cut用法

文章目录1. 命令作用2. 语法3. 常用参数4. 小案列1. 命令作用“列”截取工具,获取列的数据。2. 语法cut [options] 'splitFlag' fileName.txt # splitFlag只能是单个字符3. 常用参数 -c:以字符为单位进行分割,截取 -d:自定义分隔符,默认为制表符\t -f:指定截取那个区域,从1开始4. 小案列文件来自于 /e...

2019-11-26 10:35:15 195

原创 Shell-grep用法

文章目录1. 命令作用2. 语法3. 常用参数4. 小案列1. 命令作用从文件中过滤符合key的行;只会获取一行的数据。2. 语法grep [options] 'key' fileName.txt3. 常用参数 -i:不区分大小写 -v:查找不包含'key'的行 -w:按照单词进行匹配,而不是包含 -o: 打印匹配的key -c:统计匹配到的次数 -n:显示行号 -r:逐...

2019-11-26 10:20:18 345

原创 JVM----常用配置参数&优化

文章目录1. 常用配置参数2. 各类回收器JVM参数配置1. 串行回收器(适用单核CPU)2. 吞吐量优先回收器(适用多核CPU)3. 响应时间优先回收器(适用多核CPU)4. (响应时间+吞吐量)优先回收器: G1.3.G1优化1. 字符串去重(-XX:+UseStringDeduplication)2. 并发标记类卸载(-XX:+ClassUnloadingWithConcurrentMark...

2019-11-18 11:31:07 200

原创 JVM---各类引用作用以及项目优化

文章目录1. 软引用2. 弱引用1. 软引用概述使用软引用, 在内存敏感的程序中, 保证程序不会OOM.若内存不足的时候, 可以被GC回收代码/** * 设置堆最大大小: -Xmx:20m * 打印GC详情: -XX:+PrintGCDetails -verbose:gc * * jvm参数设置: -Xmx20m -XX:+PrintGCDetails -verbos...

2019-11-18 11:24:38 112

原创 数据结构----并查集

文章目录1. 概述2. 通过(子树大小)优化并查集.3. 通过(排名)以及(路径压缩)优化并查集1. 概述解决哪类问题:主要解决网络中节点间的连接状态。2. 通过(子树大小)优化并查集./** * 并查集(V2): 根据集合子元素个数进行优化. */public class UnionFind2 implements UnionFind { // 标识元素的parent....

2019-10-10 15:44:08 93

原创 数据结构----Trie(字典树)

文章目录1. 概述2. 源码1. 概述适合于字符串操作。时间复杂度为O(w):w为查询单词的长度。存储结构为,把字符串拆分为字母存储。图示:2. 源码/** * Trie(字典树): 适用于操作字符串. */public class Trie { private class Node { public boolean isWord; ...

2019-10-10 09:48:27 155

原创 LeetCode----键值映射(677)

文章目录1. 题目2. 示例3. 源码1. 题目来源:LeetCode键值映射实现一个 MapSum 类里的两个方法,insert 和 sum。对于方法 insert,你将得到一对(字符串,整数)的键值对。字符串表示键,整数表示值。如果键已经存在,那么原来的键值对将被替代成新的键值对。对于方法 sum,你将得到一个表示前缀的字符串,你需要返回所有以该前缀开头的键的值的总和。2. 示例...

2019-10-10 09:44:14 189

原创 数据结构----线段树(区间树)

文章目录1. 概述2. 源码1. 概述解决的问题:主要解决“区间”相关操作的问题。对区间的数据,需要进行更新和查询操作。对于给定的区间。更新:更新区间中一个元素或者一个区间的元素。查询:查询一个区间的最大值、最小值或者区间数字和。解决方式:数组:通过索引可以进行进行区间操作;但是,更新和查询的时间复杂度都是O(n),性能较低。线段树:更新和查询的时间复杂度都是O(l...

2019-10-09 15:41:52 219

原创 数据结构----优先队列&二叉堆&最大堆

文章目录1. 普通队列和优先队列区别2. 二叉堆1. 普通队列和优先队列区别普通队列:先入先出,后进后出;优先队列:出队顺序和入队顺序无法;主要取决于“优先级”。2. 二叉堆二叉堆性质底层是一棵二叉完全树(多余的数据,都要放在左子树这边,保证右子树为空。)堆中某个节点的值,总是不大于其父节点的值,这样根节点就是值最大的节点;因此,也称为最大堆;最小堆则是:父节点的值总是小于...

2019-10-08 16:15:53 173

原创 数据结构----链表实现字典结构

文章目录1. 概述2. 源码1. 概述通过内部封装的链表,来实现字典结构。2. 源码/** * 通过链表实现字典. */public class LinkedListMap<K, V> implements Map<K, V> { private class Node { public K key; public V...

2019-10-08 10:59:12 721

原创 数据结构----二叉树之二叉搜索树

文章目录1. 概述2. 源码1. 概述二叉树规则只能存在一个根节点。每个节点最多只能存在两个子节点。每个节点最多只能存在一个父亲节点。二叉搜索树规则拥有二叉树的规则。大于其左子树所有节点的值。小于其右子树所有节点的值。存储的元素必须具有“可比较性”。2. 源码...

2019-10-07 20:11:00 346

原创 数据结构---双向链表

1. 概述双向链表:每个节点存在前项指针和后项指针,方便对于节点的操作。不需要,考虑如何获取前项节点而苦恼。2. 源码/** * 双向链表: 存在前项指针和后项指针 * @param <T> */public class TwoWayList<T> { public class Node { public T data; ...

2019-09-29 16:00:51 114

原创 数据结构---LeetCode链表使用(删除指定值的节点)

文章目录1. 题目2. 解法一: 先得到第一个不是需要删除的节点.3. 解法二:使用虚拟头节点, 不需要特殊处理头节点1. 题目题目:删除链表中等于给定值 val 的所有节点。(LeetCode 203)案例:输入: 1->2->6->3->4->5->6, val = 6输出: 1->2->3->4->52. 解法一: ...

2019-09-29 11:09:19 470

原创 数据结构---链表

文章目录1. 概述2. 链表源码1. 概述链表是动态的数据结构;数组、栈、队列底层都依赖于数组,都需要固定分配存储空间;而链表则动态增加新的节点空间。2. 链表源码public class LinkedList<T> { private class Node { public T data; public Node next;...

2019-09-29 08:54:08 111

传智播客 韩顺平 Mysql数据库.ppt

韩顺平老师的MySQL数据库,写的非常好,方便大家学习。

2019-05-30

韩顺平 大型门户网站核心技术-Mysql优化-笔记-www.itmuch.com.pdf

韩顺平老师的书籍,大力推荐,非常适合学习优化java项目。特别对于MySQL方面,只有数据库性能提升了才能提高服务器性能。

2019-05-30

空空如也

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

TA关注的人

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