自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 循环依赖问题

解决:增加 @Lazy 懒加载即可。

2023-05-16 11:11:02 194

原创 threadLocal使用注意点

threadlocal

2022-12-06 23:35:26 412

原创 Json出现的错误

json问题

2022-12-06 16:43:55 604

原创 mysql自动通过表结构生成实体问题

解决是因为没有读取到数据的配置原因。

2022-10-12 19:53:33 288

原创 The bean ‘XXXservice‘ could not be injected as a ‘XXXservice‘ because it is a JDK dynamic proxy

The bean 'XXXservice' could not be injected as a 'XXXservice' because it is a JDK dynamic proxy that implements:Action:Consider injecting the bean as one of its interfaces or forcing the use of CGLib-based proxies by setting proxyTargetClass=true on @Enab

2022-07-03 18:10:25 1375

原创 Spring cloud + Nacos作为注册中心,自定义Ribbon出现的服务乱调用问题,我想调用ServiceA,但是调用到ServiceB

问题描述:自己写了一个按照版本和权重进行负载均衡的路由器,继承AbstractLoadBalancerRule,写完收工注入到容器中@Bean public IRule ruleConfig() { return new ConsumerLoadBalanceRule(); }这时候本地调试没有问题,开发环境也没有问题,到了测试环境出现一会调用正常,然后某个接口可能出现404,之前接口都是正常的。日志如下2022-05-22 03:44:52,465

2022-05-22 16:20:15 492 1

原创 使用redis实现防重-数据重复提交

前端防重:1.请求完之后,按钮置灰,等到返回结果再修改2.请求完之后进行重定向到成功页面(防止刷新提交和按钮重复提交)后端防重1.幂等性操作,使用数据库设置唯一标识来解决,相当于把防重的操作交给了数据库,来处理,这种方式避免了垃圾数据入库,表单重复提交问题,但是增加了数据库的压力一定程度来书是不太合理的,唯一性是数据库本生该有的设计,这个一般作为最后一道防线。2.session方法实现,每次提交一次请求前(或者登录时候生成一个,然后后面每次提交一次就使用,再生成一个返回,这样保证..

2021-12-15 14:58:18 8156

原创 引入Redisson可能会出现项目启动失败问题解决

问题1:需要注意Redisson版本和spring-boot版本一致,我使用的是spring-boot 2.1.3 对应的Redisson 3.9.1不然会报错问题2:Redisson自己会启动一个Redisson连接池,尝试连接redis,项目启动的时候就会连接,这时候如果k8s初始化的pod节点网络不通可能会出现问题,因为redis连接不上(说是我们的是海外服务器的原因,网络不稳定),项目报错,导致起不起来,然后pod会一直重启,因为运维层次不了解他们设置的k8s原理,需要在短时间解决,提供了下面的

2021-12-15 14:46:20 19306 2

原创 idea 所有的类都报红,打包没问题,没有dependencies菜单

之前没有这个菜单,只有一个lifecycle菜单执行完这个操作就可以了之后就会看到你的依赖目录dependencies,项目可以重新启动其它idea报红问题解决方案-这里面就很全了:彻底解决idea maven依赖报红报错问题_迟到的help的博客-CSDN博客_idea maven依赖报红...

2021-12-06 08:45:21 532

原创 使用redisson启动出现的问题

如果是项目直接启动redis服务不可用则可能出现项目直接启动不起来,报错如下:Unable to connect to Redis server: /127.0.0.1:6379如果redis在项目使用的过程中出现问题,这时候客户端连接不上,报错,会尝试25次,如果失败则不再尝试,只有在你再次使用的时候才会继续调用:2021-12-02 18:02:38.744 ERROR 12341 --- [isson-timer-4-1] o.r.c.handler.PingConnectionHandle

2021-12-02 18:17:31 3829

原创 Redis锁 - RedLock

redis提供了一个分布式锁的规范算法 Redlock java版本:Redisson :https://github.com/redisson/redisson锁的特点:独享(互斥)、无死锁(持有锁的客户端崩溃或者网络分裂,锁仍然可以使用)、容错(大部分节点活着可用)第一个阶段:redis设置锁,就是创建一个key,然后针对整个key设置过期时间,执行完,删除这个key,这里面有个问题,redis挂了怎么办?增加一个从节点?redis的主从是异步的,如果主挂了,还是有问题。(客户端A从..

2021-11-30 18:04:35 2268

原创 MAC 版本JDK 1.8 版本,下载地址

百度云网盘地址链接: https://pan.baidu.com/s/19FzCyy7Xfq_3xo-sOWm6ZA 密码: aio8

2021-11-30 11:45:27 529

原创 连接ZK出现Error: A JNI error has occurred, please check your installation and try again

连接zkpublic static void main(String[] args) { CuratorFramework curator = CuratorFrameworkFactory.builder().connectString("127.0.0.1") .retryPolicy(new RetryOneTime( 4)) .connectionTimeoutMs(10000) .

2021-11-18 18:07:38 149

原创 分布式算法与协议-总结

拜占庭将军问题信道不安全情况下,怎么实现数据的一直性维基百科解释:在分布式计算中,不同的计算机通过交换信息达成共识进行协调工作,但有时候,系统成员计算机可能发出错误的信息,或者用于传递信息的通讯网络信息损坏,是的网络中不同的成员得出最终不同的协作指令,从而破坏一直性。问题描述:一组拜占庭将军分别各率领一支军队共同围困一座城市。为了简化问题,将各支军队的行动策略限定为进攻或撤离两种。因为部分军队进攻部分军队撤离可能会造成灾难性后果,因此各位将军必须通过投票来达成一致策略,即所有军队一起进攻或所

2021-11-18 13:30:31 320

原创 ZK的leader选举过程

leader选举在FastLeaderElection类中有一个lookForLeader()方法,开启一轮选举,无论何时只要我们的QuorumPeer状态变为looking,这个方法就会被调用,这个方法会发生notification给其它同级的服务器,并形成最终的选票(最终的leader),修改自己的状态为leader或者follower,具体步骤:1. 创建选举对象,做选举前的初始化工作,初始化选票箱、无效选票箱,开始时间投出去多少秒之内回复最小值为200毫秒,之后每次变成上次一的二倍直到...

2021-11-18 13:20:52 515

原创 Random的子类 SecureRandom 在k8s系统下的pod生成随机数特别慢问题

问题描述:我们使用一个SecureRandom.getInstanceStrong()获取random对象,来生成16位的随机数,然而在生成过程中每次生成pod里面日志看需要将近两分钟生成一个数,这个问题在我本地、预生产、线上都没有问题,只有测试有这个问题。一些是在关键位置打印日志发现的问题针对整个问题,我们只需要一个唯一标识的字符串,我使用雪花算法代替--临时解决-------------------------------------------------------------------.

2021-11-09 14:02:42 457

原创 Spring Boot 单元测试编写

@RunWith(SpringRunner.class)@SpringBootTest(classes = TestApplication.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)public class Test { @Resource TestService testService; @Test public void testTask(){ Return.

2021-11-08 17:23:25 250

原创 sonar-mac版本的sonar-scanner-cli-4.6.2.2472-macosx.zip

下载地址:链接: https://pan.baidu.com/s/1-G0Js681nsMTTdEzpUaUyA 密码: t645sonar 7.4版本下载链接: https://pan.baidu.com/s/1t4udbP0XELB5cgp73pLe0Q 密码: q7m7

2021-09-07 16:24:13 365

原创 事务执行完再执行的操作代码-针对必须在事务中写代码的操作

try { TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronizationAdapter() { @Override public void afterCommit() { //执行你需要操作的事务之后的代码 } });} catch (Exception e) { log.error("Exc..

2021-09-01 16:25:47 192

原创 Error querying database. Cause: java.util.ConcurrentModificationException

Caused by: org.apache.ibatis.exceptions.PersistenceException:### Error querying database. Cause: java.util.ConcurrentModificationException### Cause: java.util.ConcurrentModificationExceptionat org.apache.ibatis.exceptions.ExceptionFac迭代稳定性问题,对数据库查询使用,

2021-08-28 16:08:29 1536

原创 Arrays.asList()问题

生成的集合是不可变集合,不能进行add和addll操作,这个生成的不是ArrayList,而是它的内部类list,集成的抽象类,如果没有自己实现就会报错, /** * {@inheritDoc} * * <p>This implementation always throws an * {@code UnsupportedOperationException}. * * @throws UnsupportedOperation

2021-08-25 15:15:07 131

原创 分布式环境下生成workerId问题

生成的雪花Id,这里面时间位是41位差不多69年,机器位是10位使用机器的mac值后两位做的,最后12位是单节点同一时间最多会出现4095个数,理论上来说都是够用的。但是在分布式场景下会出现生成的workerId相同,我目前的解决思路是通过redis操作,因为我最多机器也就6台同时运行,生成的值通过incr操作然后进行1023取余是不会出现重复的;/** * 从redis获取到workerId * @return */ public static long ini

2021-08-24 23:36:02 1417

原创 在where条件后面进行筛选使用exists和having结合的高级用法

SELECT wl.leave_id, wl.created_time, wl.leave_user_id, wl.leave_type, DATE_FORMAT(wl.start_date,'%Y-%m-%d') start_date, FORMAT(wl.leave_duration,2) leave_duration, wl.start_time, wl.end_time,.

2020-08-20 15:08:14 1877 1

原创 mysql生成一个虚拟连续时间区间作为统计分析使用

SELECT time FROM ( SELECT @num:=@num+1, CONCAT(DATE_FORMAT( SUBDATE( ADDDATE(#{startTime}, INTERVAL @num WEEK), WEEKDAY(ADDDATE(#{startTime}, INTERVAL @num WEEK)) ),'%y-%m-%d'), '~', DAT.

2020-08-20 10:35:42 319

原创 vertica 获取字段备注、名称、类型的sql

-- 增加字段备注comment on column public.user_1_super.name is '用户名称'; comment on column public.test1_super.col1 is 'day';-- 获取每个字段的名称类型 注释 CONCAT这个函数如果常量字符串则后面不能跟列否则失效SELECT col.column_name,col.data_type,com.comment FROM COLUMNS as col left join commen.

2020-07-15 11:39:01 1138

原创 mysql: unrecognized service

1. 执行报错[root@instance-s77y7hqr ~]# service mysql stopmysql: unrecognized service2.使用rpm -q mysql 出现 package mysql is not installedrpm -qa| grep mysql rpm -q mysql-community-server-5.6.47-2.el6...

2020-03-30 09:45:57 198

原创 mysql逻辑架构

mysql逻辑架构逻辑架构图连接器(Connectors)、系统管理与控制工具(Management Services & )、连接池(Connection Pool)、sql接口(SQL interface )、解析器(Parser)、查询优化器(Optimizer)、查询缓存(Cache和Buffer)、存储引擎(Pluggable Storage Engine)连接器...

2020-03-08 16:21:19 83

原创 两个对象比较的几种方案

1.直接使用equals方法,如果不重新这个方法默认是两个对象的地址值进行比较相当于== 重新equals方法,可以解决问题2.如果不行,使用两个对象的toString方法进行比较,当然这个就得两个对象同属于一个类3.再或者使用 DigestUtils.md5DigestAsHex(obj.toString().getBytes()) 进行加密之后比较值是否相同4.如果实在不行...

2019-11-28 16:00:54 3917

原创 mysql 查询数据库 从子到父的sql,以及从父到子所有孩子的接口

select DISTINCT b.* from (SELECT  T2.*FROM (     SELECT         @r AS _id,         (SELECT @r := parentId FROM t_sys_dept WHERE id = _id) AS parentId,         @l := @l + 1 AS orderId     FROM         ...

2018-05-07 18:20:26 812

原创 23种设计模式-----单例模式

使用单例模式,是由于一个类的使用只需要创建一个对象,在项目运行的时候不需要过多的创建,过多的创建是很消耗资源的,例如mybatis连接数据库使用的sqlSessionFactory用户生产sqlSession的工程,创建一次就好,这就是单例单例模式需要注意的关键:1.将构造方法的修饰符设置为private2.通过一个静态方法获取单例对象3.确保单例类的对象有且只有一个,特别是在多线程的情况下4.确...

2018-03-26 18:01:39 187

原创 TemplateInputException

Error resolving template "itoperations/api/order/messagelist", template might not exist or might not be accessible by any of the configured Template Resolvers这个原因是由于我没加@ResponseBody

2017-12-27 18:08:16 8553

原创 amr转成mp3步骤

为了导入依赖写的pom文件,把jar转成pom文件    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">    4.0.0    com.sauronsoftware.it    audioJave    1.0

2017-12-19 17:15:41 635

原创 @Autowired重要重要

数据一切正常还出现java.lang.NullPointerException: null就是因为bean没注入  @Autowired    private OpUserResponsibleMapper opUserResponsibleMapper;  @Autowired不能忘

2017-12-17 16:37:14 148

原创 使用Springboot的报错问题

org.springframework.http.converter.HttpMessageNotReadableException: Could not read document: Can not deserialize instance of java.lang.String out of START_OBJECT token这个错误是客户端和服务器之间传的参数转换问题,可能你看到的参数

2017-12-14 16:51:36 459

转载 Double-check解决多线程问题(并发问题,单例实现)

双重解决锁机制:       即解决了线程安全问题,又提高了代码效率package org.mlinge.s05;    public class MySingleton {            //使用volatile关键字保其可见性      volatile private static MySingleton instance = null;            pri

2017-12-04 20:19:02 879

原创 mybatis的动态语句

1.多条件使用1)查询    where 1 = 1        and userName  like concat('%',#{userName},'%')

2017-11-18 18:56:58 134

原创 mybatis的基本使用

1.mybatis支持声明式数据缓存,当一条SQL语句被标记为可缓存之后,先从数据库中查找,所有的数据都存到高速缓存中,默认情况下是基于Java的hashMap实现2.在同一个xml中ID唯一,namespace这个名称空间要配置对应的Mapper,            3.对于resultMap用法,        id="showDetail"  

2017-11-18 10:18:53 187

原创 Jave基础知识

1.判断集合包不包含一个元素List ll = new LinkedList();        ll.add(1);        ll.add(2);        ll.add(3);                 Integer findValue=2;                 if(ll.contains(findValue))       

2017-11-17 19:45:31 434

原创 Web前端的及基础常识

1.一个文件上传页面    pageEncoding="utf-8"%>Insert title here

2017-11-17 13:58:21 185

原创 POI批量导入到数据库详解

第一步在pom文件中导入需要的jar包            org.apache.poi            poi            3.10-FINAL                            org.apache.poi            poi-scratchpad            3.10-FINAL

2017-11-16 19:10:54 480

空空如也

空空如也

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

TA关注的人

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