天下事有难易乎?为之,则难者亦易矣;不为,则易者亦难矣。人之为学有难易乎?学之,则难者亦易矣;不学,则易者亦难矣。

标签:编程

Java

再不用担心面试官问 HashTable 和 HashMap 的区别了

点击“终码一生”,关注,置顶公众号 每日技术干货,第一时间送达!   1、HashMap简介 HashMap是基于哈希表实现的,每一个元素是一个key-value对,其内部通过单链表解决冲突问题,容量不足(超过了阀值)时,同样会自动增长。 HashMap是非线程安全的,只是用于单线程环境下,多线程环境下可以采用concurrent并发包……继续阅读 »

往事如烟 3个月前 (09-04) 286浏览 0评论 0个赞

Java

@Autowired 和 @Resource 区别?

点击上方“终码一生”,选择“加为星标” 第一时间获取技术干货!   1、介绍 今天使用Idea写代码的时候,看到之前的项目中显示有warning的提示,去看了下,是如下代码? @Autowire private JdbcTemplate jdbcTemplate; 提示的警告信息 Field injection is not r……继续阅读 »

往事如烟 4个月前 (08-16) 256浏览 0评论 0个赞

Java

Java 中 long 是不是原子操作?

点击上方“终码一生”,选择“加为星标” 第一时间获取技术干货!   1、Java中long和double的原子性 java中基本类型中,long和double的长度都是8个字节,32位(4字节)处理器对其读写操作无法一次完成,那么,JVM,long和double是原子性的吗? JVM中对long的操作是不是原子操作? 首先,通过一段……继续阅读 »

往事如烟 5个月前 (07-04) 266浏览 0评论 0个赞

开源项目

一款超级好用的 API 文档生成工具

点击上方“终码一生”,选择“加为星标” 第一时间获取技术干货! 1、介绍 smart-doc是一款同时支持JAVA REST API和Apache Dubbo RPC接口文档生成的工具,smart-doc在业内率先提出基于JAVA泛型定义推导的理念,完全基于接口源码来分析生成接口文档,不采用任何注解侵入到业务代码中。 你只需要按照ja……继续阅读 »

往事如烟 5个月前 (06-26) 218浏览 0评论 0个赞

Java

Java 必会的工具库,让你的代码量减少90%

点击上方“终码一生”,选择“加为星标” 第一时间获取技术干货! 工作很多年后,才发现有很多工具类库,可以大大简化代码量,提升开发效率,初级开发者却不知道。而这些类库早就成为了业界标准类库,大公司的内部也都在使用,如果刚工作的时候就有人告诉我使用这些工具类库,该多好! 下面,一起看一下有哪些工具类库你有用过,哪些是你没有用过的。 1、Java自带工具方法……继续阅读 »

往事如烟 5个月前 (06-26) 222浏览 0评论 0个赞

Java

Java 不可重入锁和可重入锁区别

点击上方“终码一生”,选择“加为星标” 第一时间获取技术干货! 首先我们这里提到的锁,是把所需要的代码块,资源,或数据锁上,在操作他们的时候只允许一个线程去做操作。最终结果是为了保证cpu计算结果的正确性。 对不可重入锁的理解: public class Test{      Lock lock = new Lock();      public vo……继续阅读 »

往事如烟 5个月前 (06-26) 234浏览 0评论 0个赞

Java

Mybatis-Plus 条件构造器 queryWrapper 学习

点击上方“终码一生”,选择“加为星标” 第一时间获取技术干货! 1、queryWrapper是什么 queryWrapper是mybatis plus中实现查询的对象封装操作类,他的层级关系如下: 在上面的图片中,可以看到有一下类和接口。 Wrapper:条件构造抽象类,最顶端父类,抽象类中提供4个方法西面贴源码展示 AbstractWrapp……继续阅读 »

往事如烟 6个月前 (06-19) 319浏览 0评论 0个赞

Java

HashCode() 的返回值到底是不是对象内存地址?

点击上方“终码一生”,选择“加为星标” 第一时间获取技术干货! 1、基于OpenJDK 8 一直以为Java Object.hashCode()的结果就是通过对象的内存地址做相关运算得到的,但是无意在网上看到有相应的意见争论,故抽时间从源码层面验证了剖析了hashCode的默认计算方法。 先说结论:OpenJDK8 默认hashCode的计算方法……继续阅读 »

往事如烟 6个月前 (06-19) 203浏览 0评论 0个赞

Java

MyBatis 架构与原理

点击上方“终码一生”,选择“加为星标” 第一时间获取技术干货!   1、MyBatis功能架构设计 功能架构讲解: 我们把Mybatis的功能架构分为三层: (1)API接口层:提供给外部使用的接口API,开发人员通过这些本地API来操纵数据库。接口层一接收到调用请求就会调用数据处理层来完成具体的数据处理。 (2)数据处理层:负责具体……继续阅读 »

往事如烟 6个月前 (06-15) 232浏览 0评论 0个赞

Java

RateLimiter 底层实现?如何限流的?

Guava RateLimiter基于令牌桶算法,我们只需要告诉RateLimiter系统限制的QPS是多少,那么RateLimiter将以这个速度往桶里面放入令牌,然后请求的时候,通过tryAcquire()方法向RateLimiter获取许可(令牌) 1 前言 本文不是一个RateLimiter的详细分析,仅仅是概要分析。 2 ……继续阅读 »

往事如烟 6个月前 (06-12) 210浏览 0评论 0个赞

IntelliJ IDEA

初识 IntelliJ IDEA

IntelliJ IDEA(简称 IDEA),是 Java 语言开发的集成环境,IDEA 在业界被公认为最好的 Java 开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE 支持、各类版本工具(Git、SVN、GitHub 等)、JUnit、CVS 整合、代码分析和创新的 GUI 设计等方面的功能都值得称道。至于 Eclipse 本人接触的不多,……继续阅读 »

往事如烟 6个月前 (05-30) 650浏览 0评论 0个赞

IntelliJ IDEA

牛逼!JetBrains 又出了一款编程神器!协同编程!

1 前言 我很喜欢一些在线协同编辑的文档工具:创建一个文档,把链接分享出去, 别人打开就可以直接编辑。 这时候我会观察到别人在文档中的行为:输入文字、删除文字,当然我的行为也可以被别人实时看到——这种协同工作的体验实在非常美妙。 我不由地想到,如果在IDE中也实现类似的功能,码农的生活将会有趣得多!比如: 远程协助 程序员何小痩编程中遇到一个问题,需要张大胖……继续阅读 »

往事如烟 7个月前 (05-24) 506浏览 0评论 0个赞