自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

站在搜素引擎上的巨人

转载的博文只是为了日后学习备用,若侵害到了原著者的权益,可联系删除。...

原创 LINUX 查找Tomcat日志关键词

1、根据关键字查询: #查询catalina.out日志文件中的关键词为2016-04-13 11:26:00的日志信息 grep -C 10 '2016-04-13 11:26:00' catalina.out |more 或者 从前往后 cat /logs/web-a...

2018-06-10 16:18:41 3010 0

转载 Mac 解决brew一直卡在Updating Homebrew

运行命令brew install node,结果界面一直卡在Updating Homebrew...上,有两种解决办法 方法一:直接关闭brew每次执行命令时的自动更新(推荐) vim ~/.bash_profile # 新增一行 export HOMEBREW_NO_AUTO_UPD...

2020-02-28 14:46:49 42 0

原创 Spring Boot tess4j 报Unable to load library 'tesseract': Native library解决方法

这个错误原因是在服务器上没有安装tesseract (1)如果服务器是ubuntu,那么运行下面这个命令: sudo apt-get install tesseract-ocr (2)如果服务器是CentOS的话,查了许多资料,看似解决起来很麻烦,但是实际上只运行下面这个命令即可: y...

2020-02-28 14:45:49 154 0

转载 SpringBoot打成jar运行后无法读取resources里的文件

开发一个word替换功能时,因替换其中的内容功能需要 word 模版,就把 word_replace_tpl.docx 模版文件放到 resources 下 在开发环境中通过下面方法能读取word_replace_tpl.docx文件,但是打成jar包在 linux下运行后无法找到文件了 ...

2020-02-21 14:33:31 133 0

转载 从一个git仓库迁移代码到另一个git仓库

不保留log等提交的记录的迁移就不说了,soeasy! 目标:把A仓库的代码迁移到B仓库并且保存所有的git log,B仓库已经存在了哦,哪怕是个空仓库。 再说这个之前先说点其他。在使用git的时候我们可能见到这样的命令。不想看解说想直接看步骤的往下翻 git pull origin ma...

2019-12-12 18:38:45 66 0

转载 git如何删除已经提交的文件夹

在上传项目到github时,忘记忽略了某个文件夹.idea,就直接push上去了, 最后意识到了此问题,决定删除掉远程仓库中的.idea文件夹 删除前: 删除后: 在github上只能删除仓库,却无法删除文件夹或文件, 所以只能通过命令来解决 首先进入你的master文件夹下, G...

2019-12-11 16:31:29 99 0

转载 SpringBoot根据不同的条件,加载不同的bean

Spring还提供了很多Condition给我们用 @ConditionalOnBean(仅仅在当前上下文中存在某个对象时,才会实例化一个Bean) @ConditionalOnClass(某个class位于类路径上,才会实例化一个Bean) @ConditionalOnExpression(当表...

2019-12-05 19:09:37 243 0

转载 spring boot 入门 使用spring.profiles.active来分区配置

很多时候,我们项目在开发环境和生成环境的环境配置是不一样的,例如,数据库配置,在开发的时候,我们一般用测试数据库,而在生产环境的时候,我们是用正式的数据,这时候,我们可以利用profile在不同的环境下配置用不同的配置文件或者不同的配置 springboot允许你通过命名约定按照一定的格式(ap...

2019-12-05 14:03:50 40 0

转载 mysql中tinyint、smallint、int、bigint的区别

tinyint 从 -2^7 (-128) 到 2^7 - 1 (123) 的整型数据。存储大小为1 个字节。 unsigned 是从 0 到 255 的整型数据。 所以建表的时候 只能是tinyint(3),哪怕你建tinyint(100),他最大还是3位这么多。 smallint ...

2019-11-28 17:14:12 48 0

转载 MySQL 数据类型(float)的注意事项

知识点: float:浮点数,单精度,占4字节。测试 root@localhost : test 05:49:32>create table fl(id int,fl float); Query OK, 0 rows affected (0.05 sec) root@localhos...

2019-11-28 14:00:29 25 0

原创 SpringBoot前端传参Date类型

1、针对json格式:在配置文件中加以下配置 spring.jackson.date-format=yyyy-MM-dd spring.jackson.time-zone=GMT+8 spring.jackson.serialization.write-dates-as-timestam...

2019-11-14 14:54:24 116 0

原创 记一次MySql手动开启事物的过程

最近因为需要通过SQL导入一批外部数据,在SQL的编写阶段为了不在数据库产生垃圾数据,用到了MySql中InnoDB存储引擎的事物特性。 MySql版本:select version(); MySql当前会话隔离级别:select @@tx_isolation; MySql当前存储引擎:sh...

2019-11-12 20:55:05 42 0

原创 记一次java.lang.OutOfMemoryError: unable to create new native thread

记录一次因为第三方工具使用不当引发的服务器内存被耗尽,导致Java服务无法创建新线程的OOM,当时太忙没有抽出时间来记录,现在只能凭借记忆和其他文章来还原当时问题的排查流程日后备用。 问题发现: 这个问题是在开发新需求时,在测试环境被暴露出来的,测试反馈说所有的接口突然都调不通了。 解...

2019-09-18 13:43:21 331 0

转载 [Mysql]——通过例子理解事务的4种隔离级别

[Mysql]——通过例子理解事务的4种隔离级别 第1级别:Read Uncommitted(读取未提交内容) 第2级别:Read Committed(读取提交内容) 第3级别:Repeatable Read(可重读) 第4级别:Serializable(可串行化) 参考文章 S...

2019-08-23 10:51:43 44 0

原创 Java环境变量Path和ClassPath

1.首先说一下JDK运行原理。 一个MyTest.java文件要想被运行,首先要被javac.exe编译生成字节码文件 ----> MyTest.class文件 然后JDK中的Java命令运行此MyTest.class文件,java代码就可以被执行。 2.为什么要配置Path? 平时...

2019-08-22 16:42:46 89 0

转载 浅析 Spring 中的事件驱动机制

原文出处:徐靖峰 今天来简单地聊聊事件驱动,其实写这篇文章挺令我挺苦恼的,因为事件驱动这个名词,我没有找到很好的定性解释,担心自己的表述有误,而说到事件驱动可能立刻联想到如此众多的概念:观察者模式,发布订阅模式,消息队列MQ,消息驱动,事件,EventSourcing…为了不产生歧义,笔者把自己...

2019-06-19 10:22:28 92 0

原创 Spring Cloud 使用 Seata 实现分布式事务,Nacos 作为 Seata 配置中心

Spring Cloud 使用 Seata 实现分布式事务,Nacos 作为 Seata 配置中心 使用 Seata 作为分布式事务组件,配置中心和注册中心使用 Nacos,使用 MySQL 数据库和 MyBatis,同时使用 Nacos 作为 Seata 的配置中心 至于对Nacos和S...

2019-06-12 17:18:12 14774 23

转载 99%的人都理解错了HTTP中GET与POST的区别

GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二。 最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数。 你可能自己写过无数个GET和POST请求,或者已经看过很多权威网站总结出的他们的区别,你非常清楚知道什么...

2019-04-03 19:26:56 131 0

原创 Spring Data JPA MongoDB 使用小结

一、MongoDB 设置账号和密码 使用ROTO 3T图形化客户端工具连接mongo时,MongoDB出现错误:Error: Failed to execute "listdatabases" command​ 错误:无法执行“listdatabases”命令,这时候需要用...

2019-03-20 14:32:24 903 0

原创 request.getHeader() 相关详细

在三种情况下,request.getHeader("REFERER")取值 1:通过链接跳过来 2:在地址栏中输入URL,打回车 3:刷新 当链接过来的时候,referer的值是链接过来的页面的URL,正常。我刷新的时候referer的值没有变,但当我在地址栏中打回车(URL没...

2019-01-24 19:48:23 6789 3

原创 SpringBoot记录一次循环依赖

一、情景:项目中用到了@Async注解,在项目的Application启动类中加上了@EnableAsync注解,等到启动运行服务的时候控制台日志报错: Error starting ApplicationContext. To display the auto-configuration r...

2018-11-01 11:46:39 3065 0

转载 SQL视图简介

一、视图简介: 视图可以看作定义在SQL Server上的虚拟表。视图正如其名字的含义一样,是另一种查看数据的入口。 常规视图本身并不存储实际的数据,而仅仅是由SELECT语句组成的查询定义的虚拟表 。 视图不能被修改,表修改或者删除后应该删除视图再重建。 从数据库系统内部来看,视图是由一...

2018-10-30 20:22:33 100 0

原创 Spring Data JPA 三:实现多表联查的另一种方式

         在一个项目的实际开发过程中牵涉到复杂业务的时候,我们不可避免的需要使用中间表来进行数据连接,有的同学就说了,我可以采用JPA进行主外键进行关联啊?多对多,多对一,一对一,等,采用主外键关联在数据的操作过程中具有很强的耦合性,尤其对于需要经常删改数据表而言,我们是不建议采用主外键...

2018-10-30 19:51:41 4028 0

原创 idea自动生成UUID和解决办法

序列化运行时使用一个称为 serialVersionUID 的版本号与每个可序列化类相关联,该序列号在反序列化过程中用于验证序列化对象的发送者和接收者是否为该对象加载了与序列化兼容的类。如果接收者加载的该对象的类的 serialVersionUID 与对应的发送者的类的版本号不同,则反序列化将会导...

2018-10-18 11:56:47 3723 1

转载 submit与execute区别

(1)可以接受的任务类型                submit:                               execute:                             可以看出:                         execute只能接...

2018-10-08 11:08:27 3866 0

原创 线程池的使用简介

项目中涉及到了线程池的使用,最初使用的是Executors的工厂模式向我们提供了4种线程池实现方式,但是阿里的编码规约并不推荐使用,原因是使用Executors创建线程池不会传入这个参数而使用默认值所以我们常常忽略这一参数,而且默认使用的参数会导致资源浪费,不可取。 阿里的 Java开发手册,上...

2018-09-20 10:31:55 252 0

原创 Spring Data JPA 二:实现多表关联分页查询

最近在对JPA的使用过程中发现对于单表的操作很是方便,但是当设计到多表联查的时候就需要有一些特殊的操作了。 项目中有一个场景是后台需要做一个分页的列表查询,所需要的数据分散在两张表中,如果是用mybatis的话直接定义resultMap,然后手写SQL就可以了。而在JPA中就需要用到JPQL了。...

2018-09-12 15:50:18 4631 14

原创 Spring Data JPA 一:实现多表关联查询

多表查询在spring data jpa中有两种实现方式,第一种是利用hibernate的级联查询来实现,第二种是创建一个结果集的接口来接收连表查询后的结果,这里介绍第二种方式。 一、一对一映射 实体 UserInfo :用户。 实体 Address:家庭住址。 这里通过外键的方式(一个实...

2018-08-30 17:08:48 1254 1

原创 记录两个简单的桶排序和冒泡排序

桶排序 关于桶排序先做几点说明: 1)桶排序是稳定的;  2)桶排序是常见排序算法中最快的一种,大多数情况下比快排和归并排序还要快  3)桶排序非常快但是也非常消耗空间,典型的以空间换时间,基本上是最耗内存的一种排序算法。 桶排序中:无序数组有个要求,就是成员隶属于固定(有限的)的区间,...

2018-08-21 12:01:03 114 0

转载 Spring AOP的实现原理

AOP(Aspect Orient Programming),我们一般称为面向方面(切面)编程,作为面向对象的一种补充,用于处理系统中分布于各个模块的横切关注点,比如事务管理、日志、缓存等等。AOP实现的关键在于AOP框架自动创建的AOP代理,AOP代理主要分为静态代理和动态代理,静态代理的代表为...

2018-08-03 11:12:30 111 0

原创 关于单例模式的总结

常用的单例模式基本上只有静态内部类和枚举两种形式: 枚举 public enum SomeThing { INSTANCE; private Resource instance; SomeThing() { instance = new Resourc...

2018-08-01 16:14:10 131 0

转载 单例模式的七种写法

写在前面:单例模式,是设计模式中最简单的一种,但是,他却有很多的东西需要注意,性能、线程安全等。 原文地址:http://cantellow.iteye.com/blog/838473 第一种(懒汉,线程不安全): public class Singleton {      priv...

2018-08-01 15:41:28 113 0

转载 SpringBoot ——异步调用Async

什么是异步调用? 异步调用是相对于同步调用而言的,同步调用是指程序按预定顺序一步步执行,每一步必须等到上一步执行完后才能执行,异步调用则无需等待上一步程序执行完即可执行。 如何实现异步调用? 多线程,这是很多人第一眼想到的关键词,没错,多线程就是一种实现异步调用的方式。 在非spring目...

2018-06-28 17:49:08 176 0

原创 记录一次MySql锁等待 (Lock wait timeout exceeded)异常

Java执行一个SQL查询未提交,遇到1205错误。    java.lang.Exception:    ### Error updating database.  Cause: java.sql.SQLException: Lock wait timeout exceeded; try res...

2018-05-27 00:23:35 19978 0

原创 mysql 索引整理记录

mysql 索引 使用原则:   我们应该可以知道,并不是每个字段度设置索引就好,也不是索引越多越好,而是需要自己合理的使用。   1、对经常更新的表就避免对其进行过多的索引,对经常用于查询的字段应该创建索引,   2、数据量小的表最好不要使用索引,因为由于数据较少,可能查询全部数据花费的时间比遍...

2018-05-25 11:57:23 260 0

转载 spring data jpa 详解

本篇进行Spring-data-jpa的介绍,几乎涵盖该框架的所有方面,在日常的开发当中,基本上能满足所有需求。这里不讲解JPA和Spring-data-jpa单独使用,所有的内容都是在和Spring整合的环境中实现。如果需要了解该框架的入门,百度一下,很多入门的介绍。在这篇文章的接下来一篇,会有...

2018-04-11 20:11:22 156 0

转载 计算密集型(最好用C)、IO密集型(最好用脚本)

计算密集型1、特点:要进行大量的计算,消耗CPU资源。比如计算圆周率、对视频进行高清解码等等,全靠CPU的运算能力。2、计算密集型任务虽然也可以用多任务完成,但是任务越多,花在任务切换的时间就越多,CPU执行任务的效率就越低,所以,要最高效地利用CPU,计算密集型任务同时进行的数量应当等于CPU的...

2018-03-08 09:27:46 1282 0

原创 Centos7 安装go语言开发环境

CentOS 64bit下安装Golang环境下载安装Fedora EPEL安装源# rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm# yum install golang -y编...

2018-02-28 10:55:17 462 0

转载 Centos yum 安装软件 No package XXX available.

原文链接最近安装bind时,出现 NO package bind available如下所示:[root@host /]# yum -y install bindLoaded plugins: fastestmirror, refresh-packagekit, securityLoading m...

2018-02-28 10:38:32 2073 0

原创 Golang点滴记录

&符号的意思是对变量取地址,如:变量a的地址是&a *符号的意思是对指针取值,如:*&a,就是a变量所在地址的值,当然也就是a的值了 *和&可以互相抵消,同时注意,*&可以抵消掉,但&*是不可以抵消的 首先先明白一点:无缓冲=堵塞,缓冲=非堵塞...

2018-02-26 15:22:32 103 0

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