- 博客(36)
- 资源 (13)
- 问答 (2)
- 收藏
- 关注
原创 Gradle配置文件转Maven
gradle的配置文件是build.gradlemaven的配置文件是pom.xml需要在gradle项目中生成对应maven的pom文件的话,如下操作:在 build.gradle 中添加如下代码// 下面三个看一下就知道怎么写了// gradle7之前使用apply plugin: 'maven'// gradle7之后使用apply plugin 'maven-publish'// 如果是父项目的话,在allprojects里加allprojects { …… ap.
2022-02-11 11:31:13
1847
原创 Java线程池参数解析
关键词:Java、线程池、ThreadPoolExecutorThreadPoolExecutor 参数最全的构造方法,一共有7个参数:public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit
2022-01-27 18:03:09
220
原创 Java线程池参数解析
关键词:Java、线程池、ThreadPoolExecutorThreadPoolExecutor 参数最全的构造方法,一共有7个参数:public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit
2021-10-19 13:42:23
165
原创 CompletableFuture
CompletableFuture是JDK1.8新增的,用来进行异步编排的。主要的几个方法:直接执行方法:runAsync(Runnable runnable, Executor executor) //没有返回值supplyAsync(Supplier<U> supplier, Executor executor) //有返回值追加执行方法:thenRun(Runnable action) // 上一个任务执行结束后执行,无返回值thenRunAsync(Runnab
2021-09-15 14:41:11
166
原创 关于ElasticSearch的_type类型
_type是es早期版本的设计缺陷。在5.x以前的版本里边,一个index下面是支持多个type的,在6.x的版本里改为一个index只支持一个type, type可以自定义。7.x的版本所有的type默认为_doc(自定义type也能用,但是会提示不推荐)...
2021-09-08 10:30:48
3058
原创 IDEA VUE完整模板
设置vue模板位置:Editor > File and Code Templates > Files > Vue Signle File Component注意取消勾选 Reformat according to style (取消自动重新格式化)<template>#[[$END$]]#</template><script> export default { name: "${COMPONENT_NAME}",
2021-08-24 17:11:36
1164
2
原创 Springboot项目后端校验
采用 JSR303 规范,没听过也不用理会。配置校验步骤在实体类的属性上添加指定功能注解(比如@NotBlank、@NotNull、@Size等……)在对应的XXController中接口方法的实体参数前加上@Valid注解以使用校验功能(不写@Valid 只在实体类配置无效)然后就可以测试接口了,如果校验列不符合校验规则,则会返回校验错误信息。相关注解都是javax.validation.constraints包下的,并且一个属性上可以添加多个校验规则的注解。来个例子:实体.
2021-08-23 19:13:18
347
原创 HashMap resize()方法逐行代码解析说明
final Node<K,V>[] resize()方法的作用是进行哈希表容量的初始化或扩容,在向HashMap插入数据的时候会被调用到,具体实际的操作可能有如下几种情况:直接复制(只有一个节点的桶)链表拆分(有多个节点的桶)链表转红黑树 或 红黑树恢复链表实际代码及详细注释如下: /** * Initializes or doubles table size. If null, allocates in * accord with initial ca
2021-07-09 18:20:39
256
原创 Spring随笔记录
核心:IOC控制反转将bean创建交由spring(BeanFactory)管理解耦、削减bean之间依赖关系AOP面向切面编程使用动态代理核心容器:ApplicationContext读取配置文件之后立即加载对象单例对象适用BeanFactory延迟加载对象多例对象适用ApplicationContext的实现:ClassPathXmlApplicationContext加载类路径下的配置文件(xml)FileSystemAppl
2021-07-08 11:24:20
156
原创 父pom限定springboot系依赖版本
父pom中添加如下依赖,在子模块中就不需要指定spring相关依赖的版本了version可根据自己要使用的版本进行修改。type=pom、scope=import实现引入的功能。 <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId&g
2021-07-05 11:46:25
753
原创 Interceptor中获取RequestBody数据
只是个获取的方法,但是会关闭流,导致接口无法获取数据,想要好用的可以去百度找,这只是个获取RequestBody数据的方法。并没有解决其可能导致的问题。传送门:拦截器中查看body /** * 获取body数据,但是会关闭流, * 想不关闭,需要创建一个HttpServletRequestWrapper实现类对request装饰 * * @param request * @return * @throws IOException.
2021-07-02 16:04:41
1349
原创 MySQL的基本知识
MySQL的启动程序:mysqld:代表着mysql服务器程序,执行就可以启动一个服务器进行。不常用。mysqld_safe:是一个启动脚本,间接调用mysqld,另外还启动一个守护进程,还会降服务器错误日志定位到文件中。mysql.server:间接调用mysqld_safe,启动/停止mysql程序:mysql.server start/stopmysqld_multi:运行多个MySQL服务器进程。启动Mysql客户端:mysql -h主机名 -P端口号 -u用户名 -p密码访问
2021-06-23 12:29:21
176
原创 事务隔离级别与MVCC
事务隔离级别并发事务时碰到的现象脏写:B改没提交,A改并提交,B回滚了—>A没改成(更新丢失)脏读:B改没提交,A读,B回滚了—>A读的是错的(读到别人未提交的数据)不可重复读:A读,B提交修改事务,A再读---->读的数据内容不一样了(两次读取数据内容不一致,数据被内容别人更新了)幻读:A读某条件的数据,B插入/删除符合这个条件的数据并提交,A再读---->读的不一样了(两次读取记录数不一致)不可重复读重点是update(数据内容的变更),幻读重点是insert、
2021-06-23 12:23:17
123
原创 undo日志
什么是undo日志在 事务 的执行过程中,会有一个叫做 回滚 的操作,在你执行一系列sql语句之后突然想取消了、或者执行过程中突然断电了, 回滚 操作就可以将我们所执行但未提交的数据进行恢复。既然要回滚,那么肯定会有地方记录、存储一些已经执行过的相关操作的信息。这些为了回滚而记录的信息称为 undo日志(undo log) 。就比如:插入一条记录时,至少要把这条记录的主键值记下来,之后回滚的时候只需要把这个主键值对应的记录删掉就好了。删除了一条记录,至少要把这条记录中的内容都记下来,这样之后
2021-06-23 12:20:50
2092
原创 redo日志
对应思维结构图地址:https://processon.com/view/60c85cf05653bb7a32459a19什么是redo日志redo日志格式redo日志通用格式redo日志 就是记录了下事务对数据库的修改,但是 redo日志 并不是固定一个结构的,数据库针对不同场景定义了多种类型的 redo日志 ,但是绝大部分 redo日志 都有如下结构:type + SpaceID + page numner + datatype:该条redo日志的类型。在MySQL 5.7.2.
2021-06-23 12:06:13
418
原创 ElasticSearch JavaApi 简单使用
pom.xml <!-- https://mvnrepository.com/artifact/org.elasticsearch.client/elasticsearch-rest-high-level-client --> <dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>elastic
2021-05-07 18:29:44
139
原创 SpringCloudAlibaba-Nacos 2.2.1最新版
本文编写自2021年4月8日,当前最新版本为 2021年3月30日发布的2.0.0版本本文使用版本为SpringCloudAlibaba2.0.0欢迎来到 Nacos 的世界!Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。SpringCl.
2021-04-19 14:31:24
4432
3
原创 SpringCloudAlibaba-Sentinel 2.2.1最新版
本文编写自2021年4月13日,当前控制台最新版本为 2021年2月4日发布的1.8.1版本本文使用版本控制为spring-boot-dependencies:2.4.4spring-cloud-dependencies:2020.0.2spring-cloud-alibaba-dependencies:2.2.1.RELEASE本文使用版本为(受版本控制会自动选择,也不用太关注,这里只是展示一下而已)SpringCloudAlibaba:2.2.1.RELEASE(其中包含的Sentine.
2021-04-19 12:30:43
1157
原创 @SentinelResource注解详解
在 SpringCloudAlibaba-Sentinel 这篇文档中,我们已经介绍了大致的Sentinel相关知识。但是 @SentinelResource 这个注解在那篇文档中并没有过多提及其详细内容,也就是简单提了一嘴。那篇文档的 注解介绍位置 :https://www.yuque.com/shmily-kbnvv/xxbj/ci2gs5#9lIy9 //todo 待修改成csdn地址我们在此进行一个详细介绍,首先此注解类似于Hystrix中的 @HystrixCommand 注解,指示Se.
2021-04-16 16:59:04
3874
2
原创 SpringCloud Gateway 2020.0.2最新版
简述官网:https://spring.io/projects/spring-cloud-gatewayGitHub地址:https://github.com/spring-cloud/spring-cloud-gateway该项目提供了一个用于在Spring WebFlux之上构建API网关的库。 Spring Cloud Gateway旨在提供一种简单而有效的方法来路由到API,并为它们提供跨领域的关注点,例如:安全性,监视/指标和弹性。特征建立在Spring Framework 5,Pr.
2021-04-12 15:30:59
2184
1
原创 SpringBoot自动配置原理
本文以SpringBoot2.4.4作为案例,不同版本可能有些细小差距**简述正常来说,我们一般进行spring的配置修改的时候,在application.properties中都是通过idea提示或者从网上搜索响应参数了解到的哪些参数可以进行配置,可以配置成什么样。IDEA自带提示信息页面:但是这些东西其实他是有依据的,我们的依据来源一般来源于:官方文档通过配置类(文章完就知道了)官方文档方式:如何寻找:先进入官方网站 https://spring.io/选择projec
2021-03-30 14:58:11
274
原创 Java注解以及自定义注解
注解什么是注解?用来说明程序的一个标识,是给计算机看的。注解也叫元数据,是一种代码级别的说明。它是jdk1.5之后引入的一个特性,是一种特殊的接口。可以使用在字段、类、方法、包、参数等上面。注意:注解本身没有任何功能,仅仅起到一个标示性的作用。我们是通过反射去获取到注解,再根据是否有这个注解、注解中的一些属性去判断执行哪种业务逻辑。作用分类编写文档通过代码里的注解标识去生成api文档(比如swagger)代码分析通过注解去对代码进行逻辑上的分析(通过反射去操作业务)编译检查.
2021-03-25 18:24:25
246
原创 springboot整合quartz简单示例
1. 什么是quartz参考链接 https://baike.baidu.com/item/quartz/36430552. quartz组成Job: 任务 (定义我要做什么)Trigger 调度规则(定义什么时候做)Scheduler 调度器(按照调度规则执行任务)3. 示例代码springboot启动类import org.springframework.boot.SpringApplication;import org.springframework.boot.autoc
2020-11-03 12:30:45
266
原创 spring schduled的简单使用
1. 创建一个springboot项目这是spring3.0以后的功能哈,如果要是用的话,需要使用spring3.0以上版本怎么创建springboot项目这还用我告诉你的话…别往下看了 你不适合敲代码 = =|||2. pom中导入坐标<dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId
2020-11-02 18:22:10
221
原创 Java获取cpu、内存、磁盘信息(开箱即用)
依赖<dependency> <groupId>org.fusesource</groupId> <artifactId>sigar</artifactId> <version>1.6.4</version></dependency>代码import org.hyperic.sigar.*;import java.util.Properties;/** * @autho
2020-11-02 16:18:23
955
原创 Java发送E-mail(复制改下信息就能用)
添加依赖<dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4</version></dependency>EmailSendInfo.javaimport java.util.Properties;public class EmailSendInfo {
2020-11-02 15:54:18
980
原创 POP3、SMTP、IMAP区别与联系
POP3POP3是Post Office Protocol 3的简称,即邮局协议的第3个版本。它规定怎样将个人计算机连接到Internet的邮件服务器和下载电子邮件的电子协议。它是因特网电子邮件的第一个离线协议标准,POP3允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件,而POP3服务器则是遵循POP3协议的接收邮件服务器,用来接收电子邮件的。IMAPIMAP全称是Internet Mail Access Protocol,即交互式邮件存取协议,它是
2020-11-02 14:36:56
1577
原创 HashMap面试题
HashMap面试题数据结构jdk1.8之前,HashMap是由数组+链表组成的。数组是HashMap的主体,链表主要为了解决哈希冲突(拉链法解决冲突)。jdk1.8以后,当链表长度大于8,并且当前数组长度大于64的时候,索引位置上的所有数据改用红黑树存储。目的:为了提高性能和减少搜索时间。为什么到8时转成红黑树,到6时转成链表可重复读:读的时候别人禁止访问(干啥都不行,读写)可串行化:事务串行执行,只能一个一个执行,一个执行完下一个才可以执行...
2020-10-12 15:53:59
148
原创 nginx反向代理tcp(从下载安装到配置)
从官网下载nginx安装包(未编译)下载地址:http://nginx.org/en/download.html下载-->上传到服务器-->移动到上传目录-->进行解压(比如我这里上传到 /opt 目录)cd /opttar -zxvf nginx-1.19.2.tar.gz1. 创建nginx编译安装目录(比如我这里要把编译安装后的nginx放到 /opt/nginx 文件夹下)mkdir /opt/nginx2. 移动到nginx压缩包解压目录..
2020-09-23 15:10:21
240
转载 mysql命令行压缩备份 压缩还原 命令
1、mysqldump 备份并压缩sql文件mysql>mysqldump [-h主机ip] -u用户名 -p密码 数据库名 | gzip > 压缩备份后文件.sql.gz2、mysql直接用压缩文件恢复mysql>gunzip < 压缩备份后文件.sql.gz | mysql -u用户名 -p密码 数据库名...
2020-07-08 08:55:12
498
原创 MySQL数据库source/mysqldump的导入/导出
数据库表导出:mysqldump -u用户名 -p密码 --databases "数据库名" | gzip > "目标导出文件名.sql.gz"数据库表的导入: 1. 解压.sql.gz文件gunzip -c ".sql.gz压缩文件名" > "目标.sql文件名" 2. 登陆进入MySQL数据库mysql -u用户名 -p密码...
2019-11-07 10:40:33
1100
SpringCloudAlibabaNacos笔记代码.rar
2021-04-19
SpringCloudAlibabaSentinel笔记代码.rar
2021-04-16
springcloudgateway笔记代码.rar
2021-04-08
Sigar依赖文件libsigar.rar
2020-11-02
ArrayList多线程添加元素异常,怎么解决?
2018-11-22
ArrayList多线程添加元素异常,怎么解决
2018-11-22
TA创建的收藏夹 TA关注的收藏夹
TA关注的人