11 2019 档案
摘要:Mac版本navicat premium彻底卸载的终端命令: sudo rm -Rf /Applications/Navicat\ Premium.app sudo rm -Rf /private/var/db/BootCaches/CB6F12B3-2C14-461E-B5A7-A8621B7FF
阅读全文
摘要:一、JVM运行起来,就会给内存划分空间,这块空间成为运行时数据区。运行时数据区主要划分为以下几部分内容: 1.栈 每一个线程运行起来的都会对应一个栈(线程栈),栈中的数据是该线程独有的,不会产生资源共享的情况,因此栈是线程安全的。 栈当中存放的是栈帧,当线程调用方法时,就形成一个栈帧,并将这个栈帧进
阅读全文
摘要:1. jdk1.7以及之前 ConcurrentHashMap 是由 Segment 数组结构和 HashEntry 数组结构组成。 通俗的话讲:就是首先将数据分为一段一段的存储,然后给每一段数据配一把锁,当一个线程占用锁访问其中一个段数据时,其他段的数据也能被其他线程访问。 示意图: 2. JDK
阅读全文
摘要:ConcurrentHashMap 和 Hashtable 的区别主要体现在实现线程安全的方式上不同。 1.底层的数据结构: ConcurrentHashMap 在jdk1.7之前采用的是 分段的数组和链表 实现的,在jdk1.8之后采用的是和HashMap相同的结构 数组+链表/红黑二叉树。 此结
阅读全文
摘要:1.线程是否安全方面: HashMap是线程不安全的,Hashtable是线程安全的。 HashTable 内部的方法基本都经过 synchronized 修饰。(如果你要保证线程安全的话就使用 ConcurrentHashMap 吧!); 2.效率方面: HashMap在效率方面是高于Hashta
阅读全文
摘要:废话不多说,先上图: 在Java中所有的异常都有一个共同的祖先,java.lang包下的Throwable类,这个类下有两个重要的子类:Exception(异常)和error(错误),两者都是重要的子类,各自都包含了大量的子类。 Error(错误):是程序无法处理的错误,表示运行应用程序中较严重问题
阅读全文
摘要:1.异常详情: 2.异常分析: 从异常的详情中看出:companyService未找到,出现这种情况的愿意可能是companyServiceImpl类没有交给IOC容器管理,但是经过我已经在该类上打了@Service的注解。 经过翻天覆地的查找,终于发现: 原因竟然是将@Service注解的包导错了
阅读全文
摘要:1.异常详情: 2.异常分析: (1)pageHelper分页大致流程: 配置默认的拦截器:pagehelper.PageInterceptor,对发送的查询语句进行拦截,拦截之后对原有的查询语句进行拼接Limit关键字。 (2)原因: 在mybatis的映射文件中,编写sql语句最后习惯性的添加了
阅读全文

浙公网安备 33010602011771号