![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 62
小明崽崽
这个作者很懒,什么都没留下…
展开
-
tomcat Can‘t assign requested address (Bind failed)
java.net.BindException: Can’t assign requested address (Bind failed)at java.net.PlainSocketImpl.socketBind(Native Method)at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:513)at java.net.ServerSocket.bind(ServerSocket.java:375)at ja原创 2021-10-26 17:38:49 · 251 阅读 · 0 评论 -
HashMap 源码解读
首先看一下 hashMap 的 put 方法 public V put(K key, V value) { // 这里首先是调用了一个 hash(key) 的函数,我们先看一下 hash(key) return putVal(hash(key), key, value, false, true); }计算key的hashCode static final int hash(Object key) { int h; // 首原创 2021-07-22 08:09:51 · 162 阅读 · 1 评论 -
mybatis 初始化过程
mybatis 初始化过程调用时序图mybatis首先是加载 mybatis-config.xml 文件读取mybatis-config.xmlReader reader = Resources.getResourceAsReader("org/apache/ibatis/autoconstructor/mybatis-config.xml")根据mybatis-config.xml, 创建SqlSessionFactorysqlSessionFactory = new SqlSessio原创 2021-07-09 19:52:30 · 248 阅读 · 0 评论 -
arrayList 实现原理
ArrayList 源码1,查看初始化方法2,给数组对象初始化[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vPc1ofFl-1624504581802)(C:\Users\1115393087\Desktop\typora\typora_imgs\ArrayList 源码\image-20210624095354959.png)]3,查看add(E)处理4,ensureCapacityInternal() 这个方法主要是处理数组的动态扩容5,calcul原创 2021-06-24 11:16:52 · 135 阅读 · 1 评论 -
ReentrantLock 之 NonfairSync (非公平锁)源码
简单查看ReentrantLock使用方式,ReentrantLock的无参构造是创建一个非公平锁static Lock lock = new ReentrantLock(); public static void main(String[] args) { // 加锁 lock.lock(); // 释放锁 lock.unlock(); }查看非公平锁的实现,非公平锁继承了Sync。static final cla原创 2020-08-12 11:07:05 · 297 阅读 · 0 评论 -
java 函数方法
本文章解释函数编程里面其中的两种自定义返回值的函数式编程先定义一个方法 (Request, Response 实体在本文下方) // 可以看到有两个参数, 第一个参数是我们的入参, 第二个参数就是函数方法 //(Function 是有泛型的,第一个对象是入参, 第二个对象是返回值) // 方法内可以做一些方法的前置处理 public Response fundDemo (Request request, Function<Request<String, String>,原创 2020-12-29 10:56:40 · 129 阅读 · 1 评论 -
hashMap put 实现原理
首先map的实现方式是通过数组加链表实现的,红黑树是用在优化链表过长时的性能问题。首先是 map 中的数组中存放的是那些数据原创 2020-09-23 16:51:57 · 812 阅读 · 1 评论 -
java 反射获取一个对象的范型的class
准备工作1)准备一个实体2)准备一个对象3)开始获取范型的classpublic static void main(String[] args) throws Exception { // 先开始new 一个对象,并添加一个范型(注意 {} 必须加) Handler<TestDTO> testDTOHandler = new Handler<TestDTO>(){}; // 然后,获取对象的class。在获取当前对象直接超类的Type原创 2020-10-09 19:53:52 · 316 阅读 · 0 评论