- 博客(69)
- 收藏
- 关注
转载 SpringBoot+Dubbo 启动Provider后自动关闭
解决方案:https://blog.csdn.net/quliuwuyiz/article/details/89471380
2019-11-29 13:55:39
1605
原创 利用切面实现自定义注解
package com.wework.doorservice.core.eventcollector;import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;import java.lang.annot...
2019-11-11 21:28:39
715
原创 syncronized的实现原理
相关概念线程安全的主要诱因存在共享数据(临界资源)。多个线程共同操作共享数据。解决问题的根本方法:同一时刻只有一个线程操作共享数据,其他线程必须等待该线程操作完数据后再对共享资源进行操作。互斥锁特性互斥性:同一时刻只有一个线程持有某个对象锁。也称操作原子性。可见性:锁释放之前,对共享数据的修改,对于后一个获取该锁的线程是可见的。即后一个线程获取该锁时应获得共享数据的最新值。...
2019-11-11 21:03:40
943
转载 Spring注解——使用@ComponentScan自动扫描组件
转载:https://www.jianshu.com/p/64aac6461d5b
2019-11-11 21:02:11
369
转载 【mysql】浅谈varchar(N)
转载:https://blog.csdn.net/wyhhxd/article/details/95321904
2019-11-11 21:01:40
211
转载 领域模型驱动设计(Domain Driven Design)入门概述
https://blog.csdn.net/johnstrive/article/details/16805121
2019-11-11 20:57:28
185
转载 maven release plugin插件
做分布式项目必不可少的插件:https://www.cnblogs.com/cowboys/p/10400784.html
2019-11-11 20:55:59
192
转载 Spring中InitializingBean接口的使用
转载:https://www.cnblogs.com/weiqihome/p/8922937.html
2019-11-11 20:54:18
174
转载 依赖包滥用System.gc()导致的频繁Full GC
转载:https://www.jianshu.com/p/16ad5b10582d公司出现了同链接相同的问题,现已解决。
2019-11-11 20:49:07
823
原创 Java并发基础---yeild和interrupt
yeild当调用yeild()时,会给线程调度器一个当前线程愿意让出CPU资源的暗示,但线程调度器可能会忽视这个暗示。调用yeild()后,可能是当前线程重新占有CPU资源,可能是其他同级或级别更高的线程占有CPU资源。不会释放锁。interrupt通知线程应该中断了,但线程可能中断,也可能继续执行。具体看源码/** * Interrupts this thread. ...
2019-10-27 20:52:37
245
原创 Java并发基础---notify和notifyAll的区别
相关概念锁池每个对象(不是类)有一个锁池,锁池存放的是想要获取该对象的锁但该锁已被其他线程占有的阻塞状态的线程。(有点点复杂哈~~)比如说老公正在开车送我回家,我相当于获得了老公这个对象的锁。如果此刻小三刚好也想要借用一下我的老公,那小三就只能进入我老公的锁池了,因为我的老公已经被我锁定啦。等待池线程调用wait()后,会释放该对象的锁,同时进入该对象的等待池,进入等待池的对象不会去竞争...
2019-10-27 20:40:25
150
原创 Java并发基础---sleep和wait的区别
sleep是Thread的方法,wait是Object的方法sleep可以在任何地方调用,.wait只能在syncronized方法/块中调用sleep只会释放CPU,不会释放锁资源。wait会释放锁资源。...
2019-10-27 20:13:04
134
原创 Java并发基础---线程的状态
线程的状态参考源码: public enum State { /** * Thread state for a thread which has not yet started. */ NEW, /** * Thread state for a runnable thread. A th...
2019-10-27 19:59:43
228
原创 进程和线程
进程是资源分配的最小单位。进程独占内存资源,进程间互不干扰但可互相切换。线程是CPU调度的最小单位。线程属于某个进程,一个进程可以有一个或多个线程。各个线程可共享进程资源(内存、文件I/O等),又可以独立调度CPU。进程的切换比线程的切换开销大。...
2019-10-26 22:49:13
96
原创 Thread中的start和run方法的区别
面试必问,面试必问,面试必问!别问我为什么知道~~总结run()只是Thread类的一个普通方法,调用run()并不会新建一个子线程,仍在主线程执行任务。调用start()会新建一个子线程并执行run()的内容。调用start()会有两个线程,一个是当前正在调用start()的主线程;另一个是JVM创建的子线程,用来执行run()的内容。实践实践出真知~~首先写下测试代码:publ...
2019-10-26 16:56:13
2119
原创 Java未赋值变量的初始值(默认值)
初始值(默认值)参考:官方文档Java程序中,任何变量必须初始化后才能使用。以下为不同数据类型的默认值。数据类型初始值byte0short0int0long0Lchar‘u0000’float0.0fdouble0booleanfalse所有引用类型null但并不是所有未初始化的变量都会赋默认值。...
2019-10-24 12:43:26
13067
2
原创 InnoDB和MyISAM的区别
参考:InnoDB支持事务支持行级锁执行count(*)时需遍历整张表实时计算。支持外键不支持FULLTEXT类型的全文索引,但可配置插件sphinx来支持。索引和数据一起保存在表空间。若没有主键和唯一索引,就会自动创建一个用户不可见的主键。自动增长列必须有索引,若是组合索引,则必须是组合索引的第一列。可以利用事务日志进行数据恢复,这会比较快。MyISAM不支持事务...
2019-10-23 22:12:38
115
原创 Java参数的传递机制---值传递和引用传递
值传递和引用传递碎碎念基本概念形参实参值传递引用传递Java只有值传递实例讲解当参数为基本数据类型当参数为对象,实参未更新当参数为对象,实参更新碎碎念面试时经常会被问:值传递和引用传递的区别?甚至会出一道编程题,让你写出正确答案。例如以下代码会打印什么?public static void main(String[] args) { StringBuffer a = new ...
2019-10-23 17:09:29
598
转载 HashMap、ConcurrentHashMap中的链表转红黑树的阀值是8?
转载:https://blog.csdn.net/sinat_41832255/article/details/88884586
2019-10-22 11:11:05
661
原创 Spring 参数 List
Spring 参数类型为List错误的例子:该写法有如下异常。正确写法为将List再封装成一个对象。 @PostMapping("/doors") public Response addDoors(@RequestBody DoorVO[] doors) { // todo batchAddDoors(Lists.newArrayList(doors)); ...
2019-08-12 15:39:34
675
原创 @Cachable 使用时出现的问题
@Cachable 使用时出现的问题问题1: org.springframework.expression.spel.SpelEvaluationException: EL1008E:(pos 0): Property or field ‘mykey’ cannot be found on object of type ‘org.springframework.cache.interceptor...
2019-08-12 14:38:45
2312
原创 Redisson 整合 Spring Cache
Redisson 官方文档写的很详细了:https://github.com/redisson/redisson/wiki/目录 参考第14.2章这里主要描述遇到的问题:序列化Caused by: java.lang.RuntimeException: Class com.xx.response.MemberVO does not implement Serializable or exte...
2019-08-07 21:24:14
2415
1
原创 ImportError: No module named tornado.ioloop
ImportError: No module named tornado.iolooppython脚本import tornado.ioloopimport tornado.webclass MainHandler(tornado.web.RequestHandler): def get(self): self.write("Hello, world")def...
2019-08-02 11:36:14
5341
2
原创 ReentrantLock 和 Syncronized 的区别?
syncronized: - 出现异常或代码块执行结束,自动释放锁。 - Java关键字,由JVM实现。 - 未获取到锁,则一直阻塞。 - 非公平锁。ReentrantLock: - 出现异常或代码执行结束,需在final中手动释放锁。 - Java程序实现的同步,实现了Lock接口。 - 可重入、可中断、可设置最长等待锁的时间、可判断是否占有锁、可配置成公平锁、可跨代码块加锁解...
2019-07-22 22:58:08
359
原创 Spring Transactional Async
存在问题的代码如下: @Transactional(rollbackFor = Throwable.class) public void methodA() { A a = new A(1,"new"); save(A); new Thread(()-> { A a = getA(); ...
2019-07-21 16:09:51
276
原创 Enum equals
Enum equals @Test public void testEnum() { // 相等,.name()转成字符串比较,仅比较值。 boolean b = BookingType.DailyDeskReservation.name().equals("DailyDeskReservation"); Assert.assertT...
2019-07-21 16:06:52
571
原创 ArrayList 原理
ArrayList 原理基本属性构造方法常用方法add基本流程源码解析remove基本流程源码解析基本属性Object[] elementData; 存放数据。int size; 存储的数据个数。int DEFAULT_CAPACITY = 10; 默认的容量(可存储数据的个数)Object[] EMPTY_ELEMENTDATA = {}; 空数组。Object[] DEFAULT...
2019-07-05 16:23:14
102
原创 Linux 测试IP和端口
Linux 测试IP和端口wget [ip]:[port]➜ ~ wget 127.0.0.1:6379--2019-07-03 13:57:43-- http://127.0.0.1:6379/正在连接 127.0.0.1:6379... 已连接。已发出 HTTP 请求,正在等待回应... 200 没有 HTTP 头,假定为 HTTP/0.9长度:未指定正在保存至: “inde...
2019-07-03 14:04:05
4538
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人