自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

转载 EJB到底是什么?

EJB到底是什么?这篇文章从EJB引出了cs和bs架构的区分,引出了rmi通信,讲的很明白

2020-08-31 21:12:40 138 1

转载 @Mapper和@Repository注解的区别

在用idea写一个实现类时引用了mapper类的来调用dao层的处理,使用@Autowired注解时被标红线,找不到bean。 解决办法:在mapper加@mapper或者@repository注解。 这两种注解的区别在于: 1、使用@mapper后,不需要在spring配置中设置扫描地址,通过mapper.xml里面的namespace属性对应相关的mapper类,spring将动态的生成Bean后注入到ServiceImpl中。 2、@repository则需...

2020-08-24 19:00:59 2367 1

原创 spring功能扩展之Aware接口

aware 英文译为:意识到的一 .XXXAware在spring里表示对XXX感知,实现XXXAware接口,并通过实现对应的set-XXX方法,然后就可以使用XXX了。二. Spring提供的Aware接口接口解释BeanNameAware获得到容器中Bean的名称BeanFactoryAware获得当前bean factory,这样可以调用容器的服务ApplicationContextAware获得当前application context,这样可以调用容器

2020-08-11 18:45:26 609

转载 synchronized 和lock 的实现原理

Java synchronized原理总结Java并发-AQS及各种Lock锁的原理

2020-07-04 21:06:59 136

原创 spring源码环境搭建

1. 准备阶段安装 gradle下载 spring源码 -github或者码云2.编译阶段,先根据文档编译oxm的文件,然后执行gradlew.bat文件3.导入idea漫长导包,最好编译一下core上的gradle 里的一些repack的task,然后将spring build一下4.手写一个简单的spring或者springmvc项目通过gradle构建,尽量不要用maven简单记录了一下,折腾了一个星期才整好遇到的问题1.构建过程中一定不要直接通过idea里的github下,最好

2020-06-10 20:09:32 132

原创 Java 项目中的 classpath详解

到底什么是classpath?classpath是JVM用到的一个环境变量,它用来指示JVM如何找到class因为Java是编译型语言,源码文件是.java,而编译后的.class文件才是真正可以被JVM执行的字节码。因此,JVM需要知道,如果要加载一个abc.xyz.Hello的类,应该去哪搜索对应的Hello.class文件。先说说jar包和war的目录结构如图是jar包打包后会生成一个target,target里有一个jar包,这个jar包就是我们说的默认的classpath,下面的类和文件都

2020-06-05 16:38:24 2884

转载 Redlock 和 setnx 作为redis 锁

setnx作为分布式锁,它加锁时只作用在一个Redis节点,如果加锁的过程中,master挂掉,可能还没来得及同步到slave节点,故障迁移slave升级为master的时候就会导致锁的丢失redlock高明的地方就在于它在节点上加锁的时候会保证半数以上的redis节点都已经存在这个key,value,故障迁移的slave节点肯定是数据最全的,所以切换的时候一般不会丢失数据。Redlock:Redis分布式锁最牛逼的实现...

2020-05-13 21:30:21 647

转载 b树和hash的应用场景

b树和hash的应用场景

2020-05-12 20:49:34 133

转载 “b数”(B树)是个怎么回事

要说B树(balance tree),首先需要了解的是二叉树(binary tree)简单说一下B树产生的原因。B树是一种查找树,我们知道,这一类树(比如二叉查找树,红黑树等等)最初生成的目的都是为了解决某种系统中,查找效率低的问题。B树也是如此,它最初启发于二叉查找树,二叉查找树的特点是每个非叶节点都只有两个孩子节点。然而这种做法会导致当数据量非常大时,二叉查找树的深度过深,搜索算法自根节点向下搜索时,需要访问的节点也就变的相当多。如果这些节点存储在外存储器中,每访问一个节点,相当于就是进行了一次I/

2020-05-11 22:37:07 4773

原创 IDEA 进行github发布和下载

idea版本为IntelliJ IDEA 2019.3.4 x64首先,确认github账号能够正常使用登录,然后打开 idea 并使用快捷键ctrl+alt+s打开setting,进入到plugin,搜索框中搜索git,有一个git插件(用来通过git下载,和svn一样),还有一个github(可以登录到github,进行代码托管)先创建一个仓库地址,然后再share然后输入gi...

2020-05-05 21:56:54 254

原创 map中键值的易错点

这里是无意中写出来的一个bug,感觉蛮有探索价值,就写了出来。代码如下,有兴趣的可以先看一下,这个代码有个bug,看看你们找的出来不。private static void deleteItemInOutReview(List<SupplierBillDifferItem> stockins,List<SupplierBillDifferItem> deleteD...

2019-08-27 23:01:25 171

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除