自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

努力+坚持,而且还很年轻

梦在翱翔,心在路上。保持初心,砥砺前行。

  • 博客(227)
  • 资源 (23)
  • 问答 (1)
  • 收藏
  • 关注

原创 SpringBoot2.x,不看后悔系列,建议收藏

前言SpringBoot是企业级开发的整体整合解决方案,特别用于快速构建微服务应用,旨在用简单的方式让开发人员适应各种开发场景。与此同时,随着SpringBoot的日益成熟,使用SpringBoot的公司也越来越多,想要深入了解,学习SpringBoot的同学也日益增多,所以博主决定对SpringBoot动手了。是不是有点草率了?博主就是一个这么直爽,草率的人,哈哈。但是博文都是经过博主一点一滴的积累,在工作中不断实践的经验。每个系列的博文,都有它的分享目标,我们同样也不例外。目标既然打算分享S.

2021-05-31 09:29:11 541 4

原创 Spring Cloud Alibaba系列教程——Spring Cloud Alibaba开篇

随着Spring Cloud Alibaba的发展,Spring Cloud Alibaba的相关组件逐渐的成熟,对于它的学习和研究已经是java开发人员的趋势。这篇博文主要内容是介绍什么是Spring Cloud Alibaba,Spring Cloud 与Spring Cloud Alibaba的关系,以及我们为什么要学习它,以及畅想Spring Cloud Alibaba未来发展。

2020-05-11 10:25:18 5865 3

原创 SpringBoot整合Spring Cache,简化分布式缓存开发

前言上篇博文,我们深入的介绍了SpringBoot整合Redis的相关内容,处理缓存我们使用RedisTemplate或者StringRedisTemplate结合场景选择不同的数据结构,会造成缓存代码和业务代码会紧耦合在一起。有没有更加简便的方式呢?答案:有,SpringCache。这篇博文,我们介绍,SpringCache,以及SpringCache是如何来统一不同的缓存技术以高效便捷的方式接入到项目中,最后,深入讲解SpringCache是如何解决缓存击穿,缓存穿透,缓存雪崩的,还有哪些不足。

2021-07-19 08:53:50 4821 16

原创 SpringBoot整合Redis,一篇解决缓存的所有问题

前言上一篇博文,我们重点介绍了SpringBoot如何整合Mybatis,JPA等技术,访问我们的关系型数据库,这篇博文我们介绍SpringBoot如何整合Redis来访问非关系型数据库,带你深入了解Redis的自动原理,并结合具体案例进行实操,分享所有的源码。为什么选择Spring Data RedisSpring Data Redis是Spring Data家族中最重要的一分子,它提供了从Spring应用程序轻松配置并访问Redis的功能。它提供了用于与存储交互的低级和高级抽象,使用户摆脱了对基础

2021-07-13 08:52:31 2678 12

原创 SpringBoot整合Mybatis,你真的了解原理吗?

前言在前面的博文中,我们已经对SpringBoot的相关基础知识有了深入的了解,不仅知道了什么是SpringBoot,以及如何快速开发一个SpringBoot应用,例如(Spring Boot简介与快速搭建),而且深入的学习了它的自动配置原理,知道了SpringBoot中包含很多的Starter,但是这些Starter我们如何在项目中使用呢?这篇博文,我们重点介绍SpringBoot数据访问相关的内容,不仅仅是简单的整合,而是要明白其中的原理,开始吧。了解Spring Data从官网中,我们不难发现

2021-05-26 16:01:36 4465 35

原创 SpringBoot最佳实践,它来了,它来了

前言上篇博文(SpringBoot自动配置原理,你真的懂吗?)我们详细的介绍了SpringBoot是如何完成自动配置功能的,以及具体的原理。SpringBoot的强大,大家也有所了解了,SpringBoot更加强大的地方是为什么提供了很多的Starter。下面我们来看一下:什么是Starter?Starters是一组可以在应用程序中更加方便使用的依赖关系。可以一站式地获得所需的所有Spring和其他相关技术,而我们不需要搜索示例代码和复制粘贴大量依赖。例如,如果您想开始使用Spring和JPA进行数

2021-05-13 09:15:07 7231 27

原创 SpringBoot自动配置原理,你真的懂吗?

上面博文我们简单的介绍了什么是SpringBoot,以及如何使用SpringBoot,但是我们对于SpringBoot的基本原理并没有介绍,这篇博文我们重点介绍SpringBoot是如何实现的自动配置。依赖管理在我们的pom文件中最核心的依赖就一个:<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</

2021-05-08 15:01:49 8766 48

原创 万字精华总结RocketMQ的常见用法(案例+图)

概述上篇博文,我们介绍了什么是RochetMQ,以及如何安装单机版的RochetMQ。在安装的过程了,我们主要安装了两个服务,NameServer和Broker。在发送和接收消息时,又接触了两个概念,生产者和消费者。那这些又代表什么含义呢?对于单机版本的RocketMQ架构,如下图所示:主要分为四部分:名字服务(Name Server)Name Server充当路由消息的提供者。生产者或消费者能够通过Name Server查找各主题相应的Broker IP列表。多个Namesrv实例组成集

2021-04-21 14:43:47 3229 5

原创 天下没有难学的技术,带你手撕RocketMQ

前言本来是想写RocketMQ系列博文第一篇RocketMQ简介,大致内容包括介绍什么是RocketMQ以及教大家如何安装RocketMQ的。但是呢?有网友说,学习RocketMQ官网特别难。博主本着天下没有难学的技术,带领大家一起手撕RocketMQ。对于技术人员来说,官网才是第一手资料,解决所有棘手问题的起点,也是终点。学习任何一项技术的通用步骤,三个W,解决所有问题:1、首先,问What,了解学习这项技术是干嘛的,能够解决现实项目中的什么问题?2、其次,问How,怎么做,如何下载(找到git

2021-04-16 14:32:42 2030 9

原创 Spring Boot简介与快速搭建

Spring Boot简介SpringBoot为了简化在开发基于 Spring的项目的难度,减少了哪些繁杂的配置,从而让开发基于 Spring的项目变成一个相当简单容易的事。SpringBoot其本身没有添加什么新的技术,就是整合了一些现有的框架,并提供了一些默认的配置,就是这些默认的配置,极大的提高了我们的开发效率。所以,在读者学习使用 SpringBoot之前,建议最好要有一些 Spring相关知识为基础。SpringBoot极大的简化了Spring与其他框架的整合,例如JPA、SpringMvc

2021-04-09 16:45:41 5314 17

原创 Sentinel实现动态配置的集群流控

介绍为什么要使用集群流控呢?相对于单机流控而言,我们给每台机器设置单机限流阈值,在理想情况下整个集群的限流阈值为机器数量✖️单机阈值。不过实际情况下流量到每台机器可能会不均匀,会导致总量没有到的情况下某些机器就开始限流。因此仅靠单机维度去限制的话会无法精确地限制总体流量。而集群流控可以精确地控制整个集群的调用总量,结合单机限流兜底,可以更好地发挥流量控制的效果。基于单机流量不均的问题以及如何设置集群整体的QPS的问题,我们需要创建一种集群限流的模式,这时候我们很自然地就想到,可以找一个 server

2021-04-08 17:31:39 4252 19

原创 Sentinel Gateway Nacos 网关限流三剑客

什么是网关限流?顾名思义,网关限流是通过网关层对我们的服务进行限流,达到保护后端服务的作用。在微服务架构的系统中,网关层可以屏蔽外部的请求直接对服务进行调用,网关层可以对内部服务进行隔离,保护的作用。Sentinel 支持对 Spring Cloud Gateway、Zuul 等主流的 API Gateway 进行限流。由于Zuul已经处于停更的状态,所以我们使用Sentinel与Spring Cloud Gateway设计案例,为大家讲解如何使用sentinel实现网关限流。如下图所示,Sentin

2021-03-31 09:23:35 1639 5

原创 Sentinel动态规则,使用 Nacos 配置规则

前言在学习之前的博文时,一旦我们重启服务,都会造成Sentinel规则的丢失,在生产环境是不可接受的,我们能否对规则进行持久化呢?答案是肯定的。这篇博文我们重点介绍sentinel规则的管理和推送,并使用nacos实现规则的配置。规则管理和推送Sentinel对于规则的管理和推送有三种方式:原始模式、Pull模式,Push模式。官方文档中,规则管理及推送介绍的都比较详细,每种模式的原理图,以及优缺点。在这三种模式中,前面的文章我们使用的是原始模式,但是在生产上,官网不建议大家使用。官网推荐通过动态配

2021-01-11 09:14:34 1755 3

原创 Sentinel对RestTemplate和Feign的适配

前言上篇博文,我们介绍了什么是服务熔断,并重点介绍了SentinelResource的各个属性,在案例中整合了nacos,ribbon等中间件,微服务间调用,我们使用了RestTemplate,而且我们知道服务调用还可以使用Feign,那么Sentinel是否支持对它们也可以进行限流和降级呢?这篇博文我们的重点是介绍Sentinel如何对Feign和RestTemplate实现服务限流和降级。准备工作通过对上一篇博客的学习,大家对这张图已经非常的熟悉了,UserService作为服务消费者,Ord

2021-01-05 09:15:28 589

原创 菜鸟程序员成长之路(七)——2020年,你奋斗了吗?

首先祝大家元旦快乐。元旦也就意味着新年的开始,新起点!新征程!一切都会好起来的。在2020年接近末尾的时刻,我们从工作,生活,学习三个方面对2020年做一个简单的总结,最后立一个flag。。。前言人在北京,今天你奋斗了吗?2020年对于每个人来说都是艰难的一年,但也是充满机会的一年。相信大家都看到新闻了,最近北京的疫情有所反复,但是同时也被一张图片刷爆朋友圈。人在北京,今天你奋斗了吗?这不是心灵鸡汤,却能感同身受。最后一句话我把它做为本文的标题了!仿佛这句话就是在问我一样,我可以毫不迟疑地说:

2020-12-30 09:49:04 622 8

原创 Sentinel服务熔断简介与实践

前言在Sentinel的核心注解SentinelResource简介与实践中,我们给大家详细的介绍了什么是SentinelResource,如何使用,以及其中一个重要属性blockHandler,它能够自定义sentinel控制台配置违规的异常信息,这篇博文,我们重点介绍它的另外一个重要属性fallback,它是什么,如何使用,它与blockHandler的区别。什么是服务熔断在开始之前,我们在简单理解什么是服务熔断。在降级规则中,我们介绍了什么是熔断降级,大家可以回顾一下。我们换一个通俗易懂的说法,

2020-12-28 09:08:21 447

原创 Sentinel的核心注解SentinelResource简介与实践

前言前面的博文,我们已经将Sentinel的限流规则,基本介绍清楚了,从针对接口的限制规则,流控规则与降级规则;再到细粒度的接口参数的限制规则,即热点规则;再到粗粒度的应用级限制规则,系统规则和授权规则。这篇博文,我们重点关注SentinelResource这个注解,曾经在热点规则中,我们简单的使用过SentinelResource,并没有进行深入的讲解,博主必要做做到,事无巨细,事必躬亲,这篇来了,开始。什么是@SentinelResource注解@SentinelResource 注解用来标识资源

2020-12-23 13:38:13 617 1

原创 多线程之LockSupport,线程阻塞与唤醒(十四)

什么是LockSupportLockSupport是用来创建锁和其他同步类的基本线程阻塞原语。该类与使用它的每个线程关联一个许可证(与Semaphore类的意义上类似)。 如果许可证可用,将立即返回park ,并在此过程中消费; 否则可能会阻止。 如果尚未提供许可,则需要unpark获得许可。 (与Semaphore不同,许可证不会累积。最多只有一个。)看到上面的解释一头雾水,说人话:LockSupport类使用了一种名为permit(许可)的概念来做到阻塞和唤醒线程的功能,每个线程都有一个

2020-12-22 08:58:27 488 1

原创 Sentinel系统规则与授权规则简介与实践

前面的博文,流控规则与降级规则,都是针对接口的限制规则,热点key规则是针对更加细粒度的接口参数的限制规则,同样Sentinel也提供了对系统级别的限制规则。Sentinel的限流规则的粒度,完全由你来定,有没有很期待?由于系统规则和授权规则,都比较简单,我们就使用一篇博文简单的介绍一下,大家做好实践就行了,好了,我们开始。系统规则什么是系统规则系统保护规则是从应用级别的入口流量进行控制,从单台机器的 load、CPU 使用率、平均 RT、入口 QPS 和并发线程数等几个维度监控应用指标,让系统尽可

2020-12-21 08:59:12 597 3

原创 Sentinel热点key规则简介与实践

前面两篇博文,流控规则与降级规则,都是针对接口的限制规则,这篇博文我们介绍更加细粒度的接口参数的限制规则,即热点规则,马上开始。文章目录什么是热点热点规则整体认识案例情况一:使用URL作为资源名设置热点规则,规则无效情况二:使用@SentinelResource作为资源名设置热点规则情况三:自定义降级方法情况四:参数例外项总结什么是热点热点就是经常被访问的数据。热点参数限流,就是对接口的请求参数,根据配置的限流阈值与模式,对包含热点参数的资源调用进行限制。热点参数限流可以看做是一种特殊的流量控制,仅

2020-12-17 09:11:05 753

原创 Sentinel降级规则简介与实践

上篇博文我们详细的介绍了流量控制规则,这篇博文我们重点介绍Sentinel另外一个重要的使命:熔断降级。文章目录什么是熔断降级熔断降级设计理念对熔断降级规则整体认识熔断策略慢调用比例案例异常比例案例异常数案例总结代码示例什么是熔断降级由于在分布式系统服务之间调用关系的复杂性,如果调用链路中的某个资源出现了不稳定,可能会导致请求发生堆积,进而导致级联错误。现代微服务架构都是分布式的,由非常多的服务组成。不同服务之间相互调用,组成复杂的调用链路,如下图所示:熔断降级就是当检测到调用链路中某个资源出现不

2020-12-15 08:53:52 1692 8

原创 Sentinel流控规则简介与实践

上一篇博文,学习了Sentinel 的基本使用以及安装,接下来我们开始介绍Sentine 中的第一个规则,流控规则。文章目录什么是流量控制流量控制设计理念对流控规则整体认识阈值类型QPS案例线程数案例流控模式直接关联案例链路案例流控效果快速失败Warm up案例排队等待案例什么是流量控制流量控制(flow control),其原理是监控应用流量的 QPS 或并发线程数等指标,当达到指定的阈值时对流量进行控制,以避免被瞬时的流量高峰冲垮,从而保障应用的高可用性。任意时间到来的请求往往是随机不可控的,而

2020-12-11 09:10:53 579 1

原创 Sentinel简介与安装

从这篇博文开始,我们开始介绍Spring Cloud Alibaba中另外一个核心组件:Sentinel,本文文章主要是简单介绍,整体认识,并进行下载,安装。

2020-12-08 14:52:59 716

原创 Nacos高可用集群部署最佳实践-Docker版本

上篇博文我们介绍如何使用mysql做Nacos的数据持久化,在生产环境中,如果我们想让Nacos实现高性能、高可用、可持续性的对外提供服务,我们要冗余服务,实现集群化,这篇博文我们就重点介绍如何使用docker来部署Nacos集群,以及生产集群部署的最佳实践。文章目录集群部署架构图预备环境准备Nacos Docker 快速开始首先,编写好docker-compose.yaml文件其次,两个环境变量配置文件,nacos-hostname.en和mysql.envnacos-hostname.enmysql.

2020-12-08 09:09:10 752 2

原创 Nacos的数据持久化

在Nacos系列的第一篇博文Spring Cloud Alibaba系列教程——Nacos介绍与安装,开启新时代中,我们已经介绍了Nacos的安装方式、以及如何启动,这篇博文是Nacos的安装的升级版本。在使用Nacos的过程,我们知道Nacos无论是作为配置信息还是作为注册中心,它的数据是使用嵌入式数据库实现数据的存储。Nacos能否将数据存储到数据库中呢?带着疑问,开始起飞。文章目录官网介绍前期准备具体步骤初始化数据库修改Nacos-server的配置文件启动服务总结官网介绍在0.7版本之前,在

2020-12-04 09:15:05 520

原创 使用Nacos实现多环境配置以及最佳实践

上篇博文,我们对Nacos作为配置中心做了一个简单示例,并介绍了配置原理等内容。我们这篇博文使用Nacos实现多环境配置,并在文章最后阐述在产线应用上的最佳实践。针对这篇博文,我们使用上篇博文代码示例,大家可以在cloudalibaba-config-nacos-client3377应用中进行实践。概述我们在开发项目的时候,生产环境和测试环境的一些配置可能会不一样,所以我们可能会在上线的时候手工修改这些配置信息,但是非常容易出错。Spring为我们提供了Spring Boot Profile这个功能(M

2020-09-14 16:21:07 1609

原创 使用Nacos实现分布式配置中心

上篇博文我们对如何实现在微服务间进行调用以及如何实现负载均衡进行全面的解析,这篇博文开始,介绍Nacos另外一个强大的功能:配置中心,这篇博文主要是一个快速入门,后面博客在从原理上进行介绍。什么是配置中心为什么需要配置中心?在我们开发分布式微服务项目之前,我们通常的做法都是将配置文件跟我们的项目一起打包,部署。一旦配置需要变更,我们需要硬编码进行修改,重新上线,重启服务,这样非常的不灵活,也非常不友好,如果配置出错,就又要重启服务。因此我们需要一个集中管理配置文件的服务,这个服务能够帮助我们实现配置集中

2020-09-08 09:23:30 594

原创 解锁服务调用姿势与负载均衡

上篇博文,我们介绍了Nacos作为分布式注册中心,实现服务注册与发现,服务消费者调用服务提供者时,我们是通过LoadBalancerClient接口来获取的服务实例,LoadBalancerClient是一个比较底层的API接口,对开发人员来说,我们需要拼接服务的地址,调用方式并不友好,而且对于SpringCloud原有的架构来说,没有更好的兼容现在的框架或服务。我们能不能使用RestTemplate,OpenFeign来调用服务,同样使用Ribbon来实现软负载均衡呢?答案是肯定的。准备工作在开始下面

2020-08-24 09:07:33 549

原创 菜鸟程序员成长之路(六)——2020年,你被裁员了吗?

2020年,你被裁员了吗???

2020-07-06 07:27:31 967 4

原创 多线程之死锁定位及故障分析,尽可能避免线上事故(十三)

前两篇博文,我们介绍了[线程池技术实现原理,这篇就够了](https://blog.csdn.net/jiuqiyuliang/article/details/102383861)以及线程池的拒绝策略,以及生产环境如何合理设置参数,比较彻底的介绍了线程池。我们对多线程已经介绍了很多的内容,针对多线程,高并发的分布式系统,编写的代码一定会有问题,而且问题比较多。那么有哪些问题是比较常见的问题呢?死锁就是其中一个比较常见的问题,这篇博文我们介绍什么是死锁,以及死锁产生的原因,还有定位死锁。

2020-07-03 09:56:32 681

原创 使用Nacos作为分布式注册中心,实现服务注册与发现

上篇博文我们介绍了Nacos的基本概念以及进行了安装,相信大家已经对Nacos有了基本认识,其实说白了Nacos就是分布式注册中心和分布式配置中心的集合体。这篇博文我们介绍Nacos的第一个特性,服务的注册与发现,也就是分布式注册中心的核心功能。什么是服务注册与发现服务注册与发现是来自于微服务架构的产物。在传统的架构系统中,服务的数量较少,一般使用静态配置的方式实现服务信息的配置。而伴随着微服务架构的发展,服务实例的数量和网络地址都是动态变化的,此时对系统运维提出了巨大的挑战。面对成百上千的服务实例,为

2020-07-02 08:57:50 1767 1

原创 Nacos介绍与安装,开启新时代

Nacos介绍与安装,开启新时代。。。

2020-05-18 10:16:01 1133

原创 Spring Cloud Alibaba简介及版本说明

Spring Cloud Alibaba 是什么?开始准备起飞。。。

2020-05-13 09:58:35 4222 2

原创 多线程之线程池的拒绝策略,以及生产环境如何合理设置参数(十二)

上篇博文,我们详细的介绍了[线程池的原理](https://blog.csdn.net/jiuqiyuliang/article/details/102383861),这篇我们重点介绍线程池的饱和策略,以及生产环境如何合理设置参数。为什么我们要单独拿出一篇博文来写饱和策略以及配置参数呢?因为自定义线程池配置的重点就两项:一、选择合适的线程池类型,二、配置合适的饱和策略与参数。

2020-02-24 09:54:02 1369

原创 多线程之线程池技术实现原理,这篇就够了(十一)

在Java语言中,有两种比较常见的创建线程的方法,一种是继承Thread类,一种是实现Runnable的接口,Thread类其实也是实现了Runnable接口。并且在前面的博文中我们也介绍了有返回结果的创建线程的方式。这篇博文我们就重点介绍线程池,内容如下:文章目录为什么使用线程池?线程池如何使用?架构说明线程池有几种实现参数对比应用场景对比ThreadPoolExecutor线程池的七大重要...

2020-02-18 09:55:46 773 3

原创 多线程之Condition的await和signal、signalAll等待/通知机制(十)

上篇博文,我们介绍了Condition的简介及原理,我们这篇重点介绍Condition的await和signal等待/通知机制,以及源码。原理相关的内容上篇博文,我们基本已经介绍完了,我直接看Condition接口的源码。await 方法先贴一波代码加注释:public final void await() throws InterruptedException { if (Thr...

2019-12-17 09:53:11 1815

原创 多线程之Condition的简介及原理解析(九)

上篇博文,我们重点介绍阻塞队列BlockingQueue,并实现了生产者和消费者模式。这篇博文,我们重点介绍Condition的相关内容,我们会通过两篇博文来介绍Condition。这篇是对Condition的简介,与Object类的等待通知模式简单对比,Condition接口具体实现,以及等待队列原理解析。然后通过源码解读,看具体实现并使用Condition实现生产者和消费者模式。Condit...

2019-10-16 09:38:15 931

原创 多线程之阻塞队列BlockingQueue详解(八)

上篇博文,我们简单的介绍了多线程之Semaphore,这篇我们重点介绍阻塞队列BlockingQueue

2019-09-27 00:10:12 874

原创 多线程之Semaphore详解(七)

上篇博客我们介绍了一下CyclicBarrier,这篇博客我们详细的介绍Semaphore。

2019-09-26 08:54:18 602

原创 多线程之CyclicBarrier详解(六)

上篇博客我们介绍了一下 多线程之CountDownLatch详解.,这篇博客我们详细的介绍CyclicBarrier。

2019-09-25 09:22:51 739

Nacos源码剖析-服务注册与发现.pdf

Nacos源码剖析-服务注册与发,全面解析整个过程

2021-04-08

java客户端使用api访问zookeeper,增删改查Znode

java客户端使用api访问zookeeper,增删改查Znode,多有的操作都有同步和异步的方式,代码简单,易懂

2017-02-20

使用CXF开发WebService简单实例

使用CXF开发简单HelloWorld实例

2015-09-30

Spring和ActiveMQ的整合实例源码

此实例基于Spring+JMS+ActiveMQ+Tomcat,注解的完整实例,包含jar包

2015-09-26

ActiveMQ-P2P文本消息

使用ActiveMQ实现了JMS的点对点的消息模型,实现了同步的消息机制

2015-09-20

SpringMVC+Spring+Mybatis集成开发环境

SpringMVC+Spring+Mybatis集成开发环境

2015-04-28

Spring框架的简单实现

我们从一个简单的容器开始,一步步的重构,最后实现一个基本的Spring框架的雏形,为了帮助我们更加深入的理解Spring的IoC的原理和源码。 详细内容见博文: 【SSH进阶之路】一步步重构容器实现Spring框架——从一个简单的容器开始(八) 【SSH进阶之路】一步步重构容器实现Spring框架——解决容器对组件的“侵入式”管理的两种方案--服务定位器和IoC容器(九) 【SSH进阶之路】一步步重构容器实现Spring框架——配置文件+反射实现IoC容器(十) 【SSH进阶之路】一步步重构容器实现Spring框架——彻底封装,实现简单灵活的Spring框架(十一)

2015-03-09

SpringIoC的简单实现

我们从一个简单的容器开始,一步步的重构,最后实现一个基本的Spring框架的雏形,为了帮助我们更加深入的理解Spring的IoC的原理和源码。 详细内容见博文: 【SSH进阶之路】一步步重构容器实现Spring的IoC——从一个简单的容器开始(八) 【SSH进阶之路】一步步重构容器实现Spring的IoC——解决容器对组件的“侵入式”管理的两种方案--服务定位器和IoC容器(九) 【SSH进阶之路】一步步重构容器实现Spring的IoC——工厂+反射+配置文件实现IoC容器(十)

2015-03-07

Spring2+实例

spring-framework-2.RELEASE整个的资源包,以及有一个添加用户的实例

2014-11-29

Spring3.2.9与实例

spring-framework-3.2.9.RELEASE整个的资源包,以及有一个添加用户的实例

2014-11-29

一对一双向关联映射

Hibernate的映射策略:一对一双向关联映射,有所有的测试用例,用以证明从任何一端都可以加载另一端信息。

2014-10-31

重构mvc实现struts框架

以一个简单mvc模型开始,一步步重构,封装,最终实现struts的雏形,更加深入的理解struts的基本思想

2014-09-05

struts实现简单登录

struts实现简单登录实例,体会struts的基本原理。

2014-08-29

ajax异步验证用户名是否存在

ajax异步验证用户名是否存在,非常小巧的实例,需要安装oracle数据,建立一个用户表,实例中有用户表的实体,可以仿照写一个数据库。

2014-08-07

dom4j解析xml,连接oracle数据库

dom4j解析xml,连接oracle数据库实例

2014-07-25

Servlet编写登录

Servlet编写登录的demo,重点理解Servlet的原理

2014-07-04

apache-tomcat-5.5.26

apache-tomcat-5.5.26,以及apache-tomcat-5.5.26的API文档

2014-07-04

J2SE宏观性总结

本资源中包含的是对J2SE的宏观性总结,希望对您学习java有一定帮助。

2014-04-10

jquery.form.js

上传文件需要的js文件,如果不知道怎么使用,可以看我的博客:基于asp.net+ easyui框架,js提交图片,实现先上传图片再提交表单(http://blog.csdn.net/jiuqiyuliang/article/details/19161055)

2014-02-13

上传图片之前验证图片格式,同时实现预览

js上传图片之前验证图片格式,同时实现预览,代码很简单,希望大家提出宝贵的意见。

2014-01-28

AspNetPager真分页的DLL

AspNetPager,实现真分页的DLL,在使用AspNetPager的时候一定要先附件到vs的DLL中,希望对你有帮助。

2014-01-11

智能阅读器

一款集合网页搜索与语音阅读功能的txt阅读器,右键划过智能搜索单词翻译。

2012-05-30

思维导图——信息资源管理

对信息资源管理的思维导图,通过导图可以让你一目了然的学习信息资源管理这本书的知识。

2012-03-29

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

TA关注的人

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