自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(63)
  • 收藏
  • 关注

原创 Java8 findFirst

【代码】Java8 findFirst。

2023-04-11 11:07:31 337

原创 @Transactional 注解失效的3种原因及解决办法

第一种 Transactional注解标注方法修饰符为非public时,注解将会不起作用。例如以下代码。定义一个错误的标注实现,修饰一个默认访问符的方法/****/}}}在同一个包内,新建调用对象,进行访问。//调用@Transactional标注的默认访问符方法}}测试用例@Test}}以上的访问方式,导致事务没开启,因此在方法抛出异常时,操作不会进行回滚。如果方法改为public的话将会正常开启事务,将会进行回滚。...

2022-08-31 15:45:57 3090

转载 Java8 异步编程利器 CompletableFuture 详解

我们知道Future的有局限性,它没法直接对多个任务进行链式、组合等处理,需要借助并发工具类才能完成,实现逻辑比较复杂。而是对Future的扩展和增强。实现了Future接口,并在此基础上进行了丰富的扩展,完美弥补了Future的局限性,同时实现了对任务编排的能力。借助这项能力,可以轻松地组织不同任务的运行顺序、规则以及方式。从某种程度上说,这项能力是它的核心能力。而在以往,虽然通过等工具类也可以实现任务的编排,但需要复杂的逻辑处理,不仅耗费精力且难以维护。...

2022-08-26 14:28:47 404

原创 好用的日常开发工具

开发工具

2022-08-24 15:50:41 1757

原创 idea使用命令统一修改pom文件版本号

idea中双击2下ctrl健,输入下面命令,一次性修改所以pom文件的版本号。

2022-08-24 10:12:31 1717

原创 SpringBoot 启动扩展点

我们从这些spring&springboot的扩展点当中,大致可以窥视到整个bean的生命周期。在业务开发或者写中间件业务的时候,可以合理利用spring提供给我们的扩展点,在spring启动的各个阶段内做一些事情。以达到自定义初始化的目的。此篇总结,如果有错误或者疏漏的地方,恳请指正。

2022-08-23 18:09:02 155

转载 ApiFox---解放双手!无需注解快速生成API文档,跟SpringBoot绝配!

做技术管理的童鞋,往往会陷入这样一种困境:疲于奔命,到处救火填坑,沟通推进,却挤不出时间思考对团队和项目来说真正重要的事情。如果在你的项目组里,这样的状况反复发生,那么有必要考虑一下这个团队研发效能工具了。这款工具叫Apifox, Apifox=Swagger+Postman+Mock.js+Jmeter,是一个集接口设计,文档管理,接口调试,接口mock,自动化于一体的研发效能工具。

2022-08-23 14:11:50 3776

转载 Mybatis插件+注解实现数据脱敏

在项目中需要对用户敏感数据进行脱敏处理,例如身份证号、手机号等信息进行加密再入库。

2022-08-22 14:41:28 397

原创 IDEA上传jar包至Nexus私服

idea上传jar包

2022-06-21 18:51:31 976 1

原创 Feign动态定义调用serverName与path

feign动态调用

2022-06-21 15:42:50 3635 4

转载 分布式事务7种解决方案

随着业务的快速发展、业务复杂度越来越高,几乎每个公司的系统都会从单体走向分布式,特别是转向微服务架构。随之而来就必然遇到分布式事务这个难题。这篇文章首先介绍了相关的基础理论,然后总结了最经典的事务方案,最后给出了子事务乱序执行(幂等、空补偿、悬挂问题)的解决方案,分享给大家。基础理论在讲解具体方案之前,我们先了解一下分布式事务所涉及到的基础理论知识。我们拿转账作为例子,A需要转100元给B,那么需要给A的余额-100元,给B的余额+100元,整个转账要保证,A-100和B+100同时成功,或者同时失

2022-01-09 15:22:44 397

原创 IDEA 运行时报错 Error running ‘xxx项目’: Command line is too long

Error running 'test': Command line is too long. Shorten command line for test or also for Application default configuration.点击run-> edit configurations修改这个配置为jar manifest

2020-07-07 14:04:41 743

原创 git force checkout后丢失代码如何找回

git checkout如果未提交本地代码。则会提示你选force checkout或者smart checkout最好是选smart checkout这样会把本地修改的代码先保存到statsh中,再checkout分支。如果点了force checkout则本地修改都会丢失。只能用以下步骤找回代码(找回后需要自行检查是否有错漏)在项目文件夹右键。点击local history-&gt...

2020-04-13 11:24:54 8642 3

原创 error info: feign.codec.DecodeException: Could not extract response: no suitable HttpMessageConverte

使用feign框架的@FeignClient调用GET请求,并接受json返回值的时候,需要在fastMediaTypes添加fastMediaTypes.add(MediaType.TEXT_PLAIN);配置List<MediaType> fastMediaTypes = new ArrayList<MediaType>();fastMediaT...

2020-03-09 17:43:38 6727 3

原创 IDEA触发org.apache.ibatis.binding.BindingException异常的可能性

如果你实在找不到问题所在,xml的文件链接能成功跳转对应的文件。那么检查一下是不是IDEA给你挖的这个坑。例如上图,我们希望创建的是sys文件夹,并且在sys文件夹下创建dao文件夹但是用IDEA创建,可能会直接帮你创建一个名为"sys.dao"的文件夹导致xml路径错误,抛异常。...

2020-02-20 17:08:06 358 1

转载 微服务架构

本文将介绍微服务架构和相关的组件,介绍他们是什么以及为什么要使用微服务架构和这些组件。本文侧重于简明地表达微服务架构的全局图景,因此不会涉及具体如何使用组件等细节。为了防止不提供原网址的转载,特在这里加上原文链接:https://www.cnblogs.com/skabyy/p/11396571.html要理解微服务,首先要先理解不是微服务的那些。通常跟微服务相对的是单体应用,即将所有...

2019-08-27 16:20:05 261

原创 面试----TCP协议

为什么会有TCP/IP协议在世界上各地,各种各样的电脑运行着各自不同的操作系统为大家服务,这些电脑在表达同一种信息的时候所使用的方法是千差万别。就好像圣经中上帝打乱了各地人的口音,让他们无法合作一样。计算机使用者意识到,计算机只是单兵作战并不会发挥太大的作用。只有把它们联合起来,电脑才会发挥出它最大的潜力。于是人们就想方设法的用电线把电脑连接到了一起。但是简单的连到一起是远远不够的,就好像...

2019-06-30 23:10:31 266

转载 tomcat常用配置详解和优化方法

常用配置详解1 目录结构/bin:脚本文件目录。/common/lib:存放所有web项目都可以访问的公共jar包(使用Common类加载器加载)。/conf:存放配置文件,最重要的是server.xml。/logs:存放日志文件。/server/webapps:来管理Tomcat-web服务用的。仅对TOMCAT可见,对所有的WEB APP都不可见(使用Catalina...

2019-06-29 10:57:33 394

原创 面试---mysql相关知识

四大特性 ·原子性  事务必须是原子工作单元;对于其数据修改,要么全都执行,要么全都不执行。通常,与某个事务关联的操作具有共同的目标,并且是相互依赖的。如果系统只执行这些操作的一个子集,则可能会破坏事务的总体目标。原子性消除了系统处理操作子集的可能性。  ·一致性  事务在完成时,必须使所有的数据都保持一致状态。在相关数据库中,所有规则都必须应用于事务的修改,以保持...

2019-06-28 10:27:59 164

转载 面试---线程同步方式

---------------------作者:一杯清泉来源:CSDN原文:https://blog.csdn.net/yoonerloop/article/details/81154596版权声明:本文为博主原创文章,转载请附上博文链接!在多线程中线程的执行顺序是依靠哪个线程先获得到CUP的执行权谁就先执行,虽然说可以通过线程的优先权进行设置,但是他只是获取CUP执...

2019-06-27 10:45:31 428

原创 面试---多线程

1.线程通常有五种状态,创建,就绪,运行、阻塞和死亡状态。2.阻塞的情况又分为三种:(1)、等待阻塞:运行的线程执行wait()方法,该线程会释放占用的所有资源,JVM会把该线程放入“等待池”中。进入这个状态后,是不能自动唤醒的,必须依靠其他线程调用notify()或notifyAll()方法才能被唤醒,wait是object类的方法(2)、同步阻塞:运行的线程在获取对象的同步锁时,若该同...

2019-06-27 10:13:30 186

原创 IDEA TOMCAT设置UTF-8编码

输入-Dfile.encoding=utf-8

2019-06-27 09:14:41 6720

原创 面试---JVM相关知识

描述一下 JVM 的内存区域程序计数器(PC,Program Counter Register)。在 JVM 规范中,每个线程都有它自己的程序计数器,并且任何时间一个线程都只有一个方法在执行,也就是所谓的当前方法。程序计数器会存储当前线程正在执行的 Java 方法的 JVM 指令地址;或者,如果是在执行本地方法,则是未指定值(undefined)。可看作当前线程所执行的字节码的行号的标识。Ja...

2019-06-26 11:51:41 213

原创 Springboot--Log4J配置文件

直接把这个文件放在项目resource文件夹下,命名为logback.xml<?xml version="1.0" encoding="UTF-8"?><configuration scan="true" scanPeriod="60 seconds" debug="false"> <!-- 保存路径--> <property name="logD...

2019-06-20 16:23:01 859

转载 面试---乐观锁与悲观锁

目录悲观锁乐观锁两种锁的使用场景乐观锁常见的两种实现方式1. 版本号机制2. CAS算法1 ABA 问题悲观锁总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁(共享资源每次只给一个线程使用,其它线程阻塞,用完后再把资源转让给其它线程)。传统的关系型数据库里边就用到了很多这种锁...

2019-06-20 00:37:26 159

原创 面试---mybatis与hibernate对比

目录Hibernate缓存MyBatis缓存相同点:Hibernate与MyBatis都可以是通过SessionFactoryBuider由XML配置文件生成SessionFactory,然后由SessionFactory生成Session,最后由Session来开启执行事务和SQL语句。其中SessionFactoryBuider,SessionFactory,Session的生命...

2019-06-19 23:55:54 191

原创 Docker入门(一)--image,container概念理解,命令操作

目录理解命令获取image:创建image:列出所有image:运行container:列出当前运行的container:把a文件拷贝覆盖到container id的xxx/yyy路径下(同名会覆盖):提交对container的改动:停止正在运行的container:删除container:删除image:理解docker入门难度主要在...

2019-05-25 02:13:42 606

原创 CentOS7安装docker 启动不了解决篇 "Cannot connect to the Docker daemon at unix:///var/run/docker.sock. ..."问题

[root@test ~]# yum update[root@test ~]# yum install docker[root@test ~]# service docker startRedirecting to /bin/systemctl start docker.serviceJob for docker.service failed because the con...

2019-05-24 17:17:45 8667

转载 数据库查询优化:使用explain分析sql语句执行效率

Explain命令在解决数据库性能上是第一推荐使用命令,大部分的性能问题可以通过此命令来简单的解决,Explain可以用来查看SQL语句的执行效 果,可以帮助选择更好的索引和优化查询语句,写出更好的优化语句。Explain语法:explain select … from … [where …]例如:explain select * from news;输出:+----+------...

2019-05-23 15:14:36 336

转载 Linux nohup和&的功效(守护进程启动)

目录1.使用 ./a.out 前台运行程序,会是什么效果呢?2.使用 ./a.out& 后台运行程序,会是什么效果呢?3.使用nohup ./a.out 又会是什么效果呢?4.最后测试一下nohup和&同时使用,即用nohup./a.out &运行程序,又会是什么效果呢?5.结论nohup和&究竟有啥区别?不少同学进行了回复,但并不是所有同学...

2019-05-17 09:38:56 1531 1

原创 yml文件读取pom文件的值

经常写application.properties配置文件的,会用${parameter}去读取pom文件的变量而写application.yml,${parameter}则是读取文件内部的变量值若想读取pom.xml文件的变量应该使用@parameter@...

2019-04-10 18:01:11 6641 1

原创 springboot 自动注入异常 Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException

问题:在写测试类的时候,自动注入dao,结果报了一个查找不到bean的错误。如果直接运行test方法,则会报:Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException 解决方法:偶然中发现springboot的启动类application的路径不对。应该跟项目pom文件配的group...

2019-02-25 14:37:39 6395

原创 RabbitMQ--Return消息机制、消费端限流操作、消费端ACK(四)

目录目录Confirm消息机制什么是confirm消息机制Return 消息机制什么是Return消息机制?示例代码Producer.javaConsumer.java消费端限流什么是消费端限流?消费端限流的配置示例代码:Consumer.javaMyConsumer.javaProducer.java消费端ACK与重回队...

2019-02-18 16:43:28 836

原创 RabbitMQ可靠性投递、等幂性(三)

目录什么是可靠性投递?方案一方案二等幂性什么是等幂性什么是可靠性投递?保障消息的成功发出 保障MQ节点的成功接收 发送端收到MQ节点确认应答 完善消息的补偿机制方案一消息入库 发送消息到队列 MQ节点确认应答 消费端收到应答后将状态值写入DB 定时任务检查DB中的状态值,如果为0,重新请求生产端发送消息,超过尝试次数,则把状态值为2写入库。...

2019-02-18 10:31:28 655

原创 RabbitMQ基础知识(二)

目录Binding-绑定Queue-消息队列Message-消息Virtual host-虚拟主机Exchange-交换机Binding-绑定Exchange和Queue直接的连接关系Binding可以包含RoutingKey或者其他参数Queue-消息队列消息队列,存储消息数据Durability:是否持久化(Durable,Transient)...

2019-02-15 17:54:15 395

原创 RabbitMQ安装(一)

准备yum installbuild-essential openssl openssl-devel unixODBC unixODBC-develmake gcc gcc-c++ kernel-devel m4 ncurses-devel tk tc xz下载wget www.rabbitmq.com/releases/erlang/erlang-18.3-1.el7.c...

2019-02-13 14:33:06 238

原创 IDEA Git操作

一、配置本地仓库(1)VCS --&gt; Import into Version Control --&gt; Create Git Repository创建本地git仓库(2)创建完成后会在该位置生成一个.git文件二、建立本地仓库与远程仓库的连接(1)右键项目(2)Name填写分支名称,URL填写项目的SSH地址(3)正常情况下到这里已经成功建立连...

2019-01-25 11:27:33 2662

原创 Quartz定时任务+Mysql(集群模式)

目录一、基本概念二、Mysql的表三、maven依赖pom.xml文件四、配置文件quartz.propertiesapplication.yml五、项目目录结构(代码)SchedulerConfigurationJobController MyJobFactoryAsyncJobCronJobJobServiceJobServiceImpl...

2019-01-12 15:27:22 2623 2

原创 Springboot 整合ElasticSearch(Client篇)

目录 1.简介2.依赖。pom.xml3.配置类ESConfig 4.yml配置文件5.实体类,省略不写了,根据自己的业务定义实体类6.Client的使用7.有问题留言,谢谢1.简介相信使用springboot 2.0以下的同学都遇到这个坑了。spring-boot-starter-data-elasticsearch 不支持springboot 版...

2018-12-21 18:09:33 6128 1

原创 阿里巴巴代码规范扫描

1.简介接手前同事的代码一段时间了,看得我真心难受。没有注释,各种奇怪的命名,比如你能看到一个类里面出现getSetCache和getCacheSet两个方法,传参也不同,(我也不知道这个人是不是方法重载都没学过),根本不知道他想干啥。。。 --------------------------------------------------------吐槽后的分割线----------...

2018-12-20 15:26:21 2806

空空如也

空空如也

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

TA关注的人

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