自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

江南一点雨的专栏

专注Java一百年

  • 博客(902)
  • 资源 (55)
  • 收藏
  • 关注

原创 七种 BeanDefinition,各显其能!

AbstractBeanDefinition 是一个抽象类,它根据 BeanDefinition 中定义的接口提供了相应的属性,并实现了 BeanDefinition 中定义的一部分方法。BeanDefinition 中原本只是定义了一系列的 get/set 方法,并没有提供对应的属性,在 AbstractBeanDefinition 中将所有的属性定义出来了。后面其他的实现类也基本上都是在 AbstractBeanDefinition 的基础上完成的。

2023-09-08 09:11:21 483

原创 Spring Bean 别名处理原理分析

今天来和小伙伴们聊一聊 Spring 中关于 Bean 别名的处理逻辑。

2023-09-05 11:01:30 581

原创 FactoryBean 和它的兄弟SmartFactoryBean!

在这篇文章中,松哥也和各位小伙伴演示了了 FactoryBean 的一些具体用法,但是关于 FactoryBean 的一些具体实践,这篇文章中没有讲,那么今天我就来和大家聊一聊这个话题,顺便再来说说 FactoryBean 的兄弟 SmartFactoryBean。

2023-08-31 11:44:57 233

原创 一道经典面试题:@Configuration 和 @Component 有何区别?

无论小伙伴们之前是否背过相关的面试题,今天这篇文章学完之后相信大家对这个问题都会有更深一层的理解,废话不多少,咱们开始分析。

2023-08-29 11:44:04 645

原创 @Configuration 注解的 Full 模式和 Lite 模式!

Configuration 注解相信各位小伙伴经常会用到,但是大家知道吗,这个注解有两种不同的模式,一种叫做 Full 模式,另外一种则叫做 Lite 模式。这两种不同的模式在使用时候的表现完全不同,今天松哥就来和各位小伙伴捋一捋这两种模式。

2023-08-28 10:56:34 367

原创 似懂非懂的 AspectJ

今天想和小伙伴们聊一下我们在使用 Spring AOP 时,一个非常常见的概念 AspectJ。

2023-08-25 11:40:29 244

原创 Spring 中 @Primary 注解的原理是什么?

现在就去遍历 candidates,在遍历的时候,调用 isPrimary 方法去判断这个 BeanDefinition 上是否含有 @Primary 注解,isPrimary 方法的逻辑比较简单,我就不啰嗦了,该方法中涉及到 getMergedLocalBeanDefinition 方法去父容器中查找两个细节,这个松哥在之前的文章中也都和大家聊过了(虽然 @Priority 注解可以加在类上,也可以加在方法上,但是在具体实践中,加在方法上这个注解并不会生效,只能加在类上面。

2023-08-21 11:45:42 708

原创 Spring BeanDefinition 也分父子关系?

在 Spring 框架中,BeanDefinition 是一个核心概念,用于定义和配置 bean 的元数据,虽然在实际应用中,我们一般并不会或者很少直接定义 BeanDefinition,但是,我们在 XML 文件中所作的配置,以及利用 Java 代码做的各种 Spring 配置,都会被解析为 BeanDefinition,然后才会做进一步的处理。

2023-08-16 15:27:20 271

原创 Spring 中 @Qualifier 注解还能这么用?

这样也是一个问题解决办法。

2023-08-14 11:18:13 3284

原创 透过源码,捋清楚循环依赖到底是如何解决的!

这里我比较在意的有两个地方,一个是调用 addSingletonFactory 方法向三级缓存中添加回调函数,回调函数是 getEarlyBeanReference,如果有需要,将来会通过这个回调提前进行 AOP,即使没有 AOP,就是普通的循环依赖,三级缓存也是会被调用的,这个大家继续往后看就知道了,就这样一个简单的循环依赖,默认情况下,A 会被先加载,然后在 A 中做属性填充的时候,去创建了 B,创建 B 的时候又需要 A,就会从缓存中拿到 A,大致流程如此,接下来我们结合源码来验证一下这个流程。

2023-08-09 11:30:03 352

原创 Spring 容器原始 Bean 是如何创建的?

以下内容基于 Spring6.0.4。这个话题其实非常庞大,我本来想从 getBean 方法讲起,但一想这样讲完估计很多小伙伴就懵了,所以我们还是一步一步来,今天我主要是想和小伙伴们讲讲 Spring 容器创建 Bean 最最核心的 createBeanInstance 方法,这个方法专门用来创建一个原始 Bean 实例。松哥这里就以 Spring 源码中方法的执行顺序为例来和小伙伴们分享。

2023-08-02 11:09:50 724

原创 Spring AOP 中的代理对象是怎么创建出来的?

小伙伴们看一下,这里就是先按照类去匹配,匹配通过则继续按照方法去匹配,方法匹配器要是设置的 true,那就直接返回 true 就行了,否则就加载当前类,也就是 targetClass,然后遍历 targetClass 中的所有方法,最后调用。关于第二个 if 我多说一句,如果这里进来的是一个切面的 Bean,例如第一小节中的 LogAspect,这种 Bean 显然是不需要代理的,所以会在第二个方法中直接返回,如果是其他普通的 Bean,则第二个 if 并不会进来。

2023-07-31 10:55:50 1192

原创 听说 Spring Bean 的创建还有一条捷径?

小伙伴们看一下,这里有一个判断条件,mbd.isSynthetic 是判断是否是一个合成 Bean,这种一般都是 Spring 定义的,我们自定义的 Bean 一般都不属于这一类,然后后面的 hasInstantiationAwareBeanPostProcessors 方法则是判断当前是否存在 InstantiationAwareBeanPostProcessor 类型的后置处理器,如果存在,则进入到 if 分支中。那么 resolveBeforeInstantiation 方法存在的意义是什么呢?

2023-07-28 17:02:49 565

原创 Spring AOP 中,切点有多少种定义方式?

这应该是是小伙伴们日常工作中使用最多的两种切点定义方式了。但是除了这两种还有没有其他的呢?今天松哥就来和大家聊一聊这个话题。

2023-07-27 09:59:42 990

原创 Spring 中一个少见的引介增强 IntroductionAdvisor

说白了,就是在生成代理对象的时候,把我们在 Advisor 中设置好的接口也考虑进去,这样生成的代理对象同时也是该接口的实现类,当然,在我们提供的 Advice 中,必须也要实现该接口,否则代理对象执行接口中的方法,找不到具体实现的时候就会报错了。这就是大家比较熟悉的 JDK 动态代理了,可以看到,生成的代理对象有五个接口,生成的代理对象不仅仅是 Dog、Animal 的实例,也是 SpringProxy 等的实例。我们就从 buildProxy 方法开始看起吧,这个方法看名字就知道是用来构建代理对象的。

2023-07-24 11:11:51 584

原创 玩一玩编程式 AOP

这个属性作用也是类似,我们平时在使用 AOP 的时候,有时候也会设置这个属性,这个属性如果设置为 true,则会进入到 if 分支中,但是 if 分支中的 if 则不宜满足,所以一般情况下,如果这个属性设置为 true,就意味着无论是否有接口,都使用 CGLIB 动态代理。这个方法是判断是否需要优化。关于直接使用 JDK 创建动态代理对象和直接使用 CGLIB 创建动态代理对象的代码我就不做过多介绍了,这些都是基本用法,松哥在之前录制的免费的 SSM 入门教程中都和小伙伴们讲过了,这里就不啰嗦了。

2023-07-21 19:23:53 299 1

原创 @Lazy 注解为啥就能破解死循环?

以下内容基于 Spring6.0.4。松哥和大家聊了在 Spring 中并非所有的循环依赖都可以被解决,有一些循环依赖默认情况下 Spring 也是完全无法解决的。不熟悉的小伙伴可以先看看。以第一小节的案例为例,在构造方法中互相注入对方的 Bean,此时完全就是一个死循环呀,对于这种死循环,难道真的有办法解决?Spring 里边提供了办法来解决,但是似乎又没有解决,为什么这么说,看完本文你就明白了。

2023-07-20 10:16:59 308

原创 Spring 能解决所有循环依赖吗?

以下内容基于 Spring6.0.4。看了的小伙伴,对于 Spring 解决循环依赖的思路应该有一个大致了解了,今天我们再来看一看,按照介绍的思路,有哪些循环依赖 Spring 处理不了。严格来说,其实也不是解决不了,所有问题都有办法解决,只是还需要额外配置,这个不是本文的主题,松哥后面再整文章和小伙伴们细聊。

2023-07-18 15:14:14 1771 2

原创 如何通过三级缓存解决 Spring 循环依赖

首先,什么是循环依赖?AService 和 BService 互相依赖:这个应该很好理解。

2023-07-17 15:15:18 1435 1

原创 @Autowired 到底是怎么把变量注入进来的?

接下来回到本小节一开始的源码中,处理完集合之后,接下来也是调用 findAutowireCandidates 方法去查找满足条件的 Bean,但是这个方法查找出来的 Bean 可能有多个,如果存在多个,则要通过 @Primary 注解或者其他优先级顺序,去确定到底使用哪一个(执行 determineAutowireCandidate 方法),如果查找到一个 Bean,那就把找到的 Bean 返回即可。如果不是候选类则返回一个空的 InjectionMetadata 对象,否则就继续后面的流程。

2023-07-14 10:09:00 561 1

原创 用 Spring 管理 Controller,你觉得可行吗?

中的分析,所有 Bean 都注册到 Spring 容器之后,Spring 容器作为父容器,SpringMVC 作为子容器,按理说,由于子容器可以访问父容器中的 Bean,所以 SpringMVC 是可以正常访问 Spring 容器中的 Bean 的,所以,似乎把所有的 Bean 都扫描到 Spring 容器应该是没有问题的?所以,如果把 Controller 让 Spring 容器扫描并管理,那么就会导致在默认情况下,SpringMVC 容器找不到 Controller,进而导致所有的请求 404。

2023-07-13 10:27:35 280

原创 Spring 中的父子容器是咋回事?

当使用了父子容器之后,如果去父容器中查找 Bean,那么就单纯的在父容器中查找 Bean;需要注意的是,上面这种结构中,子容器可以获取到 parent 的 Bean,但是无法获取到兄弟容器的 Bean,即如果 consumer 中引用了 merchant 中的 Bean,那么上面这个配置就有问题了。相信有小伙伴也听说过,在 SSM 项目中,Spring 容器是父容器,SpringMVC 是子容器,子容器可以访问父容器的 Bean,但是父容器不能访问子容器的 Bean。父子容器的优势是什么?

2023-07-12 10:07:58 673

原创 Spring5 中更优雅的第三方 Bean 注入

接下来松哥就来和大家简单聊一聊这个话题。

2023-07-11 10:14:00 421

原创 一道经典面试题:BeanFactory 和 FactoryBean 有何区别?

这也是 Spring 面试时一道经典的面试问题,今天我们来聊一聊这个话题。区别在于,BeanFactory 是 Spring 框架的核心接口,用于管理和提供 Bean 实例,而 FactoryBean 是一个特殊的 Bean,用于创建和管理其他 Bean 的实例。FactoryBean 在 Bean 的创建过程中提供更多的自定义能力,允许进行额外的逻辑处理。可能有的小伙伴看的还不是很清楚,我们再来详细看下。

2023-07-06 15:53:42 413

原创 BeanFactoryPostProcessor 和 BeanPostProcessor 有什么区别?

研究 Spring 源码的小伙伴可能会发现,Spring 源码中有很多名称特别相近的 Bean,我就不挨个举例了,今天我是想和小伙伴们聊一聊 Spring 中 BeanFactoryPostProcessor 和 BeanPostProcessor 两个处理器的区别。我将从以下几个方面来和小伙伴们分享。

2023-07-05 15:15:11 780

原创 Spring Security6 全新写法,大变样!

自定义 JSON 登录也和之前旧版不太一样了。小伙伴们知道,Spring Security 中默认的登录接口数据格式是 key-value 的形式,如果我们想使用 JSON 格式来登录,那么就必须自定义过滤器或者自定义登录接口,下面松哥先来和小伙伴们展示一下这两种不同的登录形式。Spring Security 默认处理登录数据的过滤器是 UsernamePasswordAuthenticationFilter,在这个过滤器中,系统会通过。

2023-06-14 18:11:38 5218

原创 delete 清空表之后,磁盘空间未发生变化?

结尾和小伙伴们留了一个小问题,就是关于命令,今天我想花点时间再来和小伙伴们聊一聊这个话题。

2023-06-07 15:59:57 1162

原创 什么时候 MySQL 查询会变慢?

前面几篇文章和小伙伴们聊的基本上都是从索引的角度去优化 MySQL 查询,然而,索引创建的好,并不意味着查询就一定快,影响查询效率的因素特别多,今天我们就来聊一聊这些可能影响到查询的因素。

2023-06-07 09:25:56 841

原创 Spring Boot 启动注解分析

其实松哥之前和小伙伴们聊过相关的问题,不过都是零散的,没有系统梳理过,之前也带领小伙伴们自定义过一个 starter,相信各位小伙伴对于 starter 的原理也有一定了解,所以今天这篇文章一些过于细节的内容我就不赘述了,大家可以翻看之前的文章。由于我们项目中的自动化配置类特别多,每一个自动化配置类都会依赖别的类,当别的类存在时,这个自动化配置类才会生效,这一堆互相之间的依赖关系,存在于。这里源码的方法命名都做的不错,基本上都能做到见名知意,小伙伴们日常开发中,应该向这样的命名思路看齐。

2023-06-02 17:43:59 809

原创 分享几个索引创建的小 Tips

例如我创建了一个联合索引 (A,B,C),按照我们之前跟大家讲的最左匹配原则,当我们使用 A、(A、B)或者 (A、B、C)去查询数据的时候,都会用到这个联合索引,所以我们就没有必要再去单独针对 A 字段创建一个索引,或者针对 A、B 字段创建一个联合索引。关于 MySQL 中的索引,松哥前面已经和小伙伴们聊了不少了,不过在索引使用的时候,还是有一些需要注意的细节,如果忽略了这些细节,可能会让索引的使用效果大打折扣。有的索引可能是由于过度考虑创建了,创建成功之后就没用过,这样的索引也应该删除掉。

2023-06-02 14:51:56 474

原创 关于在 MySQL 排序中使用索引这件事!

我们来梳理下:只有当索引的顺序和 order by 子句的顺序完全一致,并且所有列的排序方向也都一致的情况下,MySQL 才能通过索引来对结果进行排序,同时,如果是联合索引,order by 子句也需要满足最左匹配原则。可以看到,在这个查询中,优化器将 ta 表作为了第一张表,tc 表作为了第二张表,那么根据前面的结论,如果使用第一个表中的索引排序,就会用到索引排序,第二张表的则用不了,我们来验证一下。如果是第二张表的索引,就没有用到索引排序,如果两张表的索引都用了,也不会使用索引排序。

2023-05-12 16:44:02 2115 1

原创 好的索引当然是要覆盖了!

要理解什么是覆盖索引,我们需要先来回顾一下 InnoDB 中索引树的数据结构。id(主键)usernameageaddressgender1ab99深圳男2bw95天津男3cx93深圳男4bc80上海女5bg85重庆女6ac98广州男7bw99海口女8ck90深圳男9cc92武汉男10af88北京女。

2023-05-09 10:33:10 515

原创 联合索引该如何选择合适的列?

联合索引就是数据表中的多个字段,共同组成一个索引。由于 InnoDB 中索引的数据结构是一个 B+Tree,当是一个联合索引的时候,排序的时候会首先按照联合索引的第一个字段排序,如果第一个字段的值相同,则按照第二个字段排序,如果第二个字段的值也相同,则按照第三个字段排序,以此类推。idusernameageaddressgender1ab99深圳男2ac98广州男3af88北京女4bc80上海女5bg85重庆女6bw95天津男7bw。

2023-05-08 15:25:38 704

原创 索引合并,能不用就不要用吧!

在 2.1 小节和 2.2 小节,分别是求交集和求并集,为了 intersect 和 union 操作方便,在各个单独的索引扫描的时候,都是要获取到有序的主键值的合集,各个索引都获取到有序的主键,然后求交集或者并集就会比较方便。在前面的文章中,松哥和小伙伴们分享了 MySQL 中,InnoDB 存储引擎的数据结构,小伙伴们知道,当我们使用索引进行搜索的时候,每一次的搜索都是在某一棵 B+Tree 中搜索的,如果使用了二级索引的话,可能还会涉及到回表。今天我们就来讨论下这个话题。

2023-05-07 17:46:11 895

原创 说一个大家都知道的 Spring Boot 小细节!

按照 Spring Boot parent 中默认的配置,application*.yaml、application*.yml 以及 application*.properties 文件中可以引用 pom.xml 中定义的变量,其他文件则不可以。如果其他文件也想引用,就要额外配置一下。也就是在 yaml 或者 properties 文件中,如果我们想引用 pom.xml 中定义的变量,就可以通过。在 yaml 中引用 pom.xml 的配置,有一个非常经典的用法,就是多环境切换。

2023-04-28 11:04:44 450

原创 前缀索引,在性能和空间中寻找平衡

有时候为了提升索引的性能,我们只对字段的前几个字符建立索引,这样做既可以节约空间,还能减少字符串的比较时间,B+Tree 上需要存储的索引字符串更短,也能在一定程度上降低索引树的高度,提高查询效率。MySQL 中的前缀索引有点类似于 Oracle 中对字段使用 Left 函数来建立函数索引,只不过 MySQL 的这个前缀索引在查询时是内部自动完成匹配的,并不需要使用 Left 函数。不过前缀索引有一个缺陷,就是有可能会降低索引的选择性。

2023-04-24 11:03:57 591

原创 MySQL 主键自增也有坑?

在上篇文章中,松哥和小伙伴们分享了 MySQL 的聚簇索引,也顺便和小伙伴们分析了为什么在 MySQL 中主键不应该使用随机字符串。但是主键不用随机字符串用什么?主键自增?主键自增就是最佳方案吗?有没有其他坑?今天我们就来讨论下这个话题。

2023-04-20 11:49:06 1500

原创 再聊 MySQL 聚簇索引

数据库的索引从不同的角度可以划分成不同的类型,聚簇索引便是其中一种。聚簇索引英文是 Clustered Index,有时候小伙伴们可能也会看到有人将之称为聚集索引等,与之相对的是非聚簇索引或者二级索引。聚簇索引并不是一种单独的索引类型,而是一种数据的存储方式。此时,数据放在叶子结点中,聚簇聚簇,意思就是说数据行和对应的键值紧凑的存在一起。id(主键)usernameageaddressgender1ab99深圳男2ac98广州男3af88北京女4bc80。

2023-04-19 10:15:58 997

原创 MySQL索引数据结构入门

说到索引,最常见的例子就是查字典,当我们需要查询某一个字的含义时,正常操作都是先根据字典的索引,找到该字在哪一页,然后直接翻到该页就行了。如果没有这个索引的话,那么我们就得一页一页的翻字典,直到找到该字。很明显,相对于第一种方案,第二种方案效率就要低很多了。数据库中的索引也是类似的。索引,我们也称之为 index 或者 key,当数据量比较少的时候,索引对于查询产生的效果并不明显,所以索引常常被人所忽略,但是当数据量比较大的时候,一个优秀的索引对查询产生的影响就是非常明显的了。

2023-04-13 09:50:33 853

原创 Spring Boot+Nacos+gRPC,一个区别于 OpenFeign 的微服务通信方案!

gRPC 的基础知识前面跟小伙伴们分享了很多了,今天再写一篇给这个小小的系列收个尾。我们前面介绍的都是 gRPC 的基本用法,最终目的当然是希望能够在 Spring Boot 中用上这个东西,相信大部分小伙伴对于微服务的通信方案如 OpenFeign、Dubbo、消息驱动都有所了解,但是对于这三种方案之外的其他方案,可能听的多用的少,今天我们就来实践一下 gRPC 这种方案。顺便说一下我为什么会想到写 gRPC 教程呢,是因为之前我想给小伙伴们总结一下常见的各种微服务通信方案。

2023-04-06 10:32:27 2010

Android开发中线程池的使用Demo

Android开发中线程池的使用Demo,详情见博客http://blog.csdn.net/u012702547/article/details/52259529

2016-08-20

Dagger2中Scope使用Demo

Dagger2中@Scope注解的使用,详见博客http://blog.csdn.net/u012702547/article/details/52213706

2016-08-15

Dagger2Demo

Dagger2使用Demo,详情见博客http://blog.csdn.net/u012702547/article/details/52200927

2016-08-14

ButterKnife使用Demo

Android注解框架ButterKnife使用Demo,详情见博客http://blog.csdn.net/u012702547/article/details/52194594

2016-08-12

Android模拟登录知乎

Android模拟登录知乎,Cookie持久化,具体请看我的博客:http://blog.csdn.net/u012702547/article/details/52156315

2016-08-09

DataBindingDemo3

Android开发中的数据绑定DataBindingDemo3,具体请看我的博客http://blog.csdn.net/u012702547/article/details/52077515

2016-07-31

DataBindingDemo2

Android开发中的数据绑定DataBindingDemo,具体请看我的博客http://blog.csdn.net/u012702547/article/details/52077515

2016-07-31

DataBindingDemo

Android开发中的数据绑定DataBindingDemo,具体请看我的博客http://blog.csdn.net/u012702547/article/details/52077515

2016-07-31

zxing的aar包

详情见博客http://blog.csdn.net/u012702547/article/details/51501350

2016-05-26

Android在线视频播放器Demo

Android在线视频播放器Demo,详见http://blog.csdn.net/u012702547/article/details/51317709

2016-05-04

Android自定义View值ProgressBar

Android自定义View值ProgressBar,详情请看http://blog.csdn.net/u012702547/article/details/51290266

2016-05-01

android自定义View之NotePad出鞘记

android自定义View之NotePad出鞘记,自定义NotePad,android自定义笔记本

2016-04-25

android自定义View之仿通讯录侧边栏滑动,实现A-Z字母检索

android自定义View之仿通讯录侧边栏滑动,实现A-Z字母检索

2016-04-24

Android中Dialog使用详解

android中AlertDialog使用详解,详细请看我的个人博客http://blog.csdn.net/u012702547/article/details/50676606

2016-02-16

ImageView的scaleType属性练习

ImageView的scaleType属性练习,具体请查看我的博客http://blog.csdn.net/u012702547/article/details/50586946

2016-01-26

snackbar使用Demo

snackbar使用demo,详情见博客http://blog.csdn.net/u012702547/article/details/50284355

2015-12-13

导航栏Demo

TabLayout使用Demo,详情见博客http://blog.csdn.net/u012702547/article/details/50273523

2015-12-12

android文件存储源码及笔记

android文件存储工具类及相关笔记,详情请查看博客http://blog.csdn.net/u012702547/article/details/50269639

2015-12-12

自定义ContentProvider

自定义ContentProvider的一个Demo,详情查看我的博客http://blog.csdn.net/u012702547/article/details/50193087

2015-12-06

GitForWindows2.6.3

由于众所周知的原因,下载该文件网速非常差,这里下载好了,大家可以直接下载。详情请见http://blog.csdn.net/u012702547/article/details/50129773

2015-12-01

flowable实战教程.pdf

251页原创flowable实战教程

2022-12-14

Spring入门.pdf

江南一点雨原创 Spring 入门教程,更多 Spring教程请关注我的 CSDN 博客:https://blog.csdn.net/u012702547

2020-02-17

SpringMVC 入门教程.pdf

江南一点雨原创 SpringMVC 入门教程,更多 SpringMVC教程请关注我的 CSDN 博客:https://blog.csdn.net/u012702547

2020-02-17

MyBatis入门教程

江南一点雨原创 MyBatis 入门教程,更多 MyBatis教程请关注我的 CSDN 博客:https://blog.csdn.net/u012702547

2020-02-17

Spring Boot2 教程.pdf.zip

江南一点雨原创 Spring Boot2 教程合集。更多Spring Boot2资料可以关注我的 CSDN博客https://blog.csdn.net/u012702547

2020-02-17

GitHub入门与实践

GitHub入门与实践,GitHub入门与实践 是本人花钱买的电子版。是一个带你入门Github的优秀书籍。此PDF带完整书签。此次上传 纯属赚点csdn积分。

2017-10-16

websocket使用案例

websocket使用入门案例,详情请见博客http://blog.csdn.net/u012702547/article/details/77655826

2017-08-28

dubbo入门案例-参考官方文档

dubbo入门案例,详情见博客http://blog.csdn.net/u012702547/article/details/77601538

2017-08-26

dubbo入门案例参考

dubbo的一个入门案例,主要参考了官方文档,详情见博客http://blog.csdn.net/u012702547/article/details/77601538

2017-08-26

Ajax上传文件Demo

Ajax上传文件Demo以及Ajax上传文件前的预览效果实现。详情见博客http://blog.csdn.net/u012702547/article/details/77585111

2017-08-25

SpringSession+Redis实现Session共享案例

SpringSession+Redis实现Session共享案例,详情请看http://blog.csdn.net/u012702547/article/details/72991283

2017-06-10

省市县三级联动数据库

省市县三级联动数据库,文件是导出的SQL语句,下载后直接执行即可。

2017-04-27

Java单元测试相关的两个jar包

Java单元测试相关的两个jar包

2017-01-13

Binder详解Demo

Binder详解Demo,详见博客http://blog.csdn.net/u012702547/article/details/52748403

2016-10-07

AIDL使用DEMO

AIDL使用DEMO,详情见博客http://blog.csdn.net/u012702547/article/details/52747989

2016-10-07

SQLBrite使用Demo

SQLBrite使用Demo,详见博客http://blog.csdn.net/u012702547/article/details/52577403

2016-09-18

干货集中营App

干货集中营App,详见博客:http://blog.csdn.net/u012702547/article/details/52566120

2016-09-17

Retrofit使用Demo

retrofit使用Demo,详见博客http://blog.csdn.net/u012702547/article/details/52143090#comments

2016-09-13

ViewPager之PageTransformer属性使用Demo

ViewPager之PageTransformer属性使用Demo,详情见博客http://blog.csdn.net/u012702547/article/details/52334161

2016-08-28

Android5.0水波纹效果Demo

Android5.0水波纹效果Demo,详见博客http://blog.csdn.net/u012702547/article/details/52325418

2016-08-26

空空如也

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

TA关注的人

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