11 Moshow郑锴

尚未进行身份认证

Powered by Core iMoshow

等级
TA的排名 2k+

Spring Boot2+JPA之悲观锁和乐观锁实战

什么时候用悲观锁或者乐观锁:1.`悲观锁`适合`写多读少`的场景。因为在使用的时候该线程会独占这个资源,就适合用悲观锁,否则用户只是浏览文章的话,用悲观锁就会经常加锁,增加了加锁解锁的资源消耗。2.`乐观锁`适合`写少读多`的场景。由于乐观锁在发生冲突的时候会回滚或者重试,如果写的请求量很大的话,就经常发生冲突,结合事务会有经常的回滚和重试,这样对系统资源消耗也是非常大。

2019-11-15 15:20:36

js复制文本到粘贴板(Clipboard.writeText())

前言js如何复制文本到粘贴板呢,网上所说的各种复制。。在Chrome都没用。网上的代码基本思路是通过window.clipboardData.setData('Text',textVal)这个对象来操作的。可是都不work。/***复制代码*/$('#btnCopy').bind('click',function(e){if(!$.isEmptyObject...

2019-11-13 22:46:26

探索StringUtils3之StringUtils.isEmpty()和StringUtils.isBlank()的区别

StringUtils中有很多方法,常用的也许你除了isEmpty/isNotEmpty/isNotBlank/isBlank外,并不知道还有`isAnyEmpty/isNoneEmpty/isAnyBlank/isNoneBlank`的存在,comeon,让我们一起来探索`org.apache.commons.lang3.StringUtils;`这个工具类.#isEmpty系列#isBank系列#其他方法

2019-11-05 14:17:53

JAVA+MYSQL+CSV用正则表达式获取CPU天梯分数

前言这是一次补记录,那天接到基友一个临时任务。根据他给的文件,分析并获取CPU天梯榜的分数,然后进行分级。下面开始我们的思路拆解:数据处理部分如果有多份文件,也都是按照这个思路处理。原始CPU数据:首先是excel文件,为每一列添加一个序列seq,并另存为CSV。例如cpu_1020.xlsx另存为cpu_1020.csv然后通过navicat的导入向导功能,可以导入为数据库表。c...

2019-10-27 11:20:58

ORA-1653: unable to extend table by 1024 in tablespace(oracle表空间满了的解决方案)

前言今天某项目的一个Repository的正常CRUD操作,发现报错信息ORA-1653:unable to extend table by 1024 in tablespace,什么意思呢,就是表空间已满,无法扩展.问题分析USERS表空间是默认用户表空间,在创建一个用户并没有指定此用户使用表空间时,该用户所有信息都会放入到users表空间中,如果有指定则一般是用户名相关的表空.--查看...

2019-10-23 14:10:24

Java stream判断列表是否包含某几个元素/重复元素

背景(需求经过修改过)判断一个profile是否包含PROFILE-IN-A和PROFILE-IN-B且都是Enable=1打勾的.既然已经JDK8了,那就用lambda吧,如果是foreach可能比较难处理,用stream的filter则可以这样做.核心代码可以这么写intintCheck=profileServiceDtoList.stream().filter(e->...

2019-10-07 18:15:42

IDEA中查看文件中所有方法(类似eclipse里面的outline) alt+7

IDEA中查看文件中所有方法(类似eclipse里面的outline) -> Alt + 7

2019-10-07 18:07:30

fastjson @JSONField与SerializerFeature

名称 含义 备注 QuoteFieldNames 输出key时是否使用双引号,默认为true UseSingleQuotes 使用单引号而不是双引号,默认为false WriteMapNullValue 是否输出值为null的字段,默认为false 常用 WriteEnumUsingToString Enum输出n...

2019-09-23 22:49:21

JUnit+Mockito单元测试之打桩when().thenReturn();

什么是Mock 测试Mock 测试就是在测试过程中,对于某些不容易构造(如 HttpServletRequest 必须在Servlet 容器中才能构造出来)或者不容易获取的对象(如 JDBC 中的ResultSet 对象,JPA的CRUDRepository,需要执行数据库操作的),用一个虚拟的对象(Mock 对象)来创建(覆盖方法返回)以便测试的测试方法。JUnit 是一个单元测试框架。...

2019-09-18 15:00:57

JavaScript使用localStorage存储数据

背景以前js都是Session和Cookie来存储信息,仿佛我还停留在那个时候,一问同事有没有新的solution,才知道现在已经有HTML5localStorage本地存储这个东西,可以在浏览器端储存数据。记得最早的Cookies只能存很小的东西,4KB的样子,并且安全性很差,在IE6时代一个域名也只能二十个Cookies吧,限制挺大,当然IE还有userData的东西,没什...

2019-09-18 10:53:12

JDBC:The server time zone value '�й���׼ʱ��' is unrecognized or represents more than one time zone.

背景今天项目切换到了mysql8.0.12,结果还多了一个报错,看来8和5.7的差别还真大。。。烦烦烦。。。com.mysql.cj.exceptions.InvalidConnectionAttributeException: The server time zone value ‘�й���׼ʱ��’ is unrecognized or represents more than one...

2019-09-08 22:45:34

JDBC/MYSQL问题 : Unknown system variable 'query_cache_size'

背景今天运行一个开源项目,竟然遇到Caused by: java.sql.SQLException: Unknown system variable 'query_cache_size'的问题。真是神奇,query_cache_size是什么,如何解决?>>>先看详细报错信息:#by zhengkai.blog.csdn.net2019-09-08 22:20:09.82...

2019-09-08 22:21:13

在lambda的foreach遍历中break退出(lambda foreach break)

前言Q: 当我们需要在lambda的遍历循环中返回或者退出,应该怎么办?A: 在lambda的foreach中是不能用break的,这相当不人性化。但是别忘了,用回默认的forEach遍历是可以的。另外,还可以用return啊,exception啊,java9的takewhile啊,findAny啊等等来实现

2019-09-06 16:07:04

MariaDB ubuntu install guide

Install Command这些都是ubuntu下常用的几个MySQL/MariaDB命令#by https://blog.csdn.net/moshowgame#安装mariadb 10.3,如果是想用mysql则改为mysql-serversudo apt install mariadb-server#进入mysql/mariadb控制台sudo mysql -u root -...

2019-09-01 00:06:31

springboot junit Unit-Testing(via spring-boot-starter-test)

Spring Boot默认提供了一系列`实用工具`和`Annotation注释`来帮助您测试应用,可以用来做`单元测试Unit Testing`。大多数开发人员使用`spring-boot-starter-test`的 Starter 模块,它导入Spring Boot测试模块以及JUnit,AssertJ,Hamcrest和许多其他有用的库。

2019-08-14 18:36:10

SpringBootApplication是如何启动Tomcat的? | 破解SpringBoot Tomcat启动之谜 !

我们都知道,SpringBoot内置了容器Tomcat,可以直接启动WebServletServer,那么SpringBoot是如何启动Tomcat的?本文从Main方法入手,从SpringApplication.run跟到ServletWebServerApplicationContext 再到TomcatServletWebServerFactory,破解SpringBoot Tomcat启动之谜 !!!

2019-08-14 11:58:33

ElasticSearch Sharing | ES入门分享(spring-boot-starter-ElasticSearch+ElasticStack/ELK)

本周Regular Meeting上Sharing的一个ElasticSearch入门教程,PPT版本,包含es入门基础+通过springboot-stater使用es+ElasticStack/ELK日志收集分析系统。。。走过路过不错过。

2019-08-14 09:58:25

ElasticSearch之ICU分词器

分词器分词器 接受一个字符串作为输入,将 这个字符串拆分成独立的词或 语汇单元(token) (可能会丢弃一些标点符号等字符),然后输出一个 语汇单元流(token stream) 。一个analyzer分词器包含三个部分:character filter:分词之前的预处理,过滤掉HTML标签、特殊符号转换等。tokenizer:分词token filter:标准化ES内置分词器...

2019-08-13 18:09:14

ElasticSearch 倒排索引(Inverted Index)| 什么是倒排索引?

ElasticSearch中一个重要的概念:倒排索引(InvertedIndex)也叫反向索引,有反向索引必有正向索引。通俗地来讲,正向索引是通过key找value,反向索引则是通过value找key。如果类比现代汉语词典的话,那么Term就相当于词语,TermDictionary相当于汉语词典本身,TermIndex相当于词典的目录索引,Post...

2019-08-13 11:32:54

基于ELK打造强大的日志收集分析系统(springboot2+logback+logstash+elasticsearch+kibana)

上一代的日志分析系统springboot+log4j+flume+kafka仿佛还是昨天,现在已经流行起了新一代的springboot2+logback+logstash+elasticsearch的日志分析系统,借助es强大的生态圈以及全文搜索能力,实现日志收集/分析/检索不再是难事。日志收集分为两种情况:logback直接输出到logstash,通过Tcp/Socket等传输(网络...

2019-08-10 19:14:55

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。