java

4 10 月, 2022

mybatis Configuration初始化源码分析

在上一篇文章中,我们记录了[mybatis的基础用法](./mybatis的基础用法.md),这里我们将主要探讨下mybatis mapper的生成原理,主要查看mybatis是如何加载xml配置文件、类与类之间的关系、以及mapper如何创建。因此我们带着好奇心开始探讨mybatis吧。

进一步了解
3 10 月, 2022

Mybatis基础使用教程

mybatis在日常开发中是很常用的功能,mybatis整体在使用上属于半自动的工具,我们可以通过自定义sql的方式满足日常开发需要,同时自定义sql也让我们对sql优化有了更好的把控。今天这篇文章主要记录mybatis的基础使用,为以后对mybatis的原理实现做一个基础铺垫,便于由浅入深。

进一步了解
24 9 月, 2022

Jackson处理XML转换集合无法指定名称问题

今日在公司负责公司支付业务模块,因为银行系统主要采用XML的报文格式,因此在不想做XML拼接的情况下,使用了Jackson作为xml报文与Bean之间的互相转换关系,但是在使用到集合形式的数据转化时,却和我期望的结果有比较大的差异,因此这边文章作为记录,希望可以帮到其他有需要的小伙伴。

进一步了解
5 4 月, 2022

JAVA线程如何通过ThreadLocal共享数据?

在JAVA开发过程中, 我们经常会使用到ThreadLocal类,该类主要用于存储于线程相关的数据,并且数据只能够通过线程获取。其他线程是无法拿到数据的。但是有这么一个场景,父线程创建了一个子线程,希望子线程能够共享父线程ThreadLocal中的变量数据,这应该怎么做呢?

进一步了解
16 3 月, 2022

java中接口vs抽象类, 两者都有哪些区别?

Java本身属于面向对象编程语言,面向对象的四个特性: 继承,封装,抽象,多态。其实这里的抽象与今天所说的抽象类其实不是一个意思。特性中的抽象是对实现业务的抽象,可以通过抽象类,接口或者其他的方式对实现抽象。所以抽象类更多的是强调具体的实现。而特性抽像更多的是一种思想。

进一步了解
20 2 月, 2022

Java NIO 代码实现详解

在Java后期的迭代中,引入NIO相关的内容, 提高IO的处理效率,这篇文章主要介绍NIO的代码实现。NIO改变了BIO的工作方式,并且提供了non-blocking实现,引入了Selector实现Epoll模型,提升系统性能

进一步了解
13 2 月, 2022

JAVA中BIO的实现方式以及优化

在日常开发中,总是会涉及到对IO相关的操作,而在JAVA中,网络编程包含了BIO、NIO、以及AIO这几种类型,今天这篇文章主要讲解在JAVA BIO的工作模式,以及针对BIO的常见的优化方式。

进一步了解
27 11 月, 2021

spring clound openfeign 原理解析(一) — Ribbon

在前面章节中我们介绍了ribbon的使用以及启动原理,在这篇文章中将主要介绍openfeign的原理。在Spring cloud体系中, feign其实有着很重比较重要的地位,因为feign能够大大简化我们对远程请求以及返回结果的处理,帮助我们快速开发。我们还是以一个简单的demo开始我们的代码调试和讲解步骤.

进一步了解