自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

怪盗基德

心纯净,行至美。

  • 博客(12)
  • 资源 (2)
  • 收藏
  • 关注

原创 Spring源码解析之四 ------ AOP原理和源码分析

在介绍AOP之前,想必很多人都听说AOP是基于动态代理和反射来实现的,那么在看AOP之前,你需要确实弄懂动态代理和反射。巧了,我这里就有。JDK的动态代理的实现和源码分析,参见我的这两篇文章JDK的动态代理源码分析之一   (   http://blog.csdn.net/weililansehudiefei/article/details/73655925  )JDK的动态代理源

2017-06-28 08:40:53 6051

原创 Spring源码解析之二 ------ 自定义标签的解析和注册(IOC的第一步)

在《spring源码解析之一 -----  默认标签的解析注册》中,已经介绍了Spring对于默认标签(beans、bean、alias、import)的解析注册。看到这个时候,你也会明白,我们常用的aop标签,并不是spring的默认标签,而是自定义标签。spring对自定义标签,提供了良好的扩展和支持。在上篇文章中,按照源码看bean的解析过程中,在下方的代码里,是自定义标签和Default标

2017-06-27 01:16:11 960

原创 Spring源码解析之一 ------ 默认标签的解析注册(IOC的第一步)

要看Spring bean加载的过程,最好的是Debug跟着流程走,有所侧重的看。首先需要的搭建本地环境和简单的项目工程,搭建的方法我放在这篇博客里。我也是看了不少博客,Debug了很多次才终于理解整个过程。第一次看的时候,别心急,几天看完第一次都没关系。我相信这篇文章,能让你看懂bean加载。《这里应该介绍一下web工程读取xml的顺序,然后加载》一、schema、xsd的认识

2017-06-26 20:08:26 1085 1

原创 springMVC使用@ControllerAdvice实现异常处理

@ControllerAdvice注解的类,会被作用于@RequesMapping注解的方法上。先来看看它的基本实现@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Componentpublic @interface ControllerAdvice {被Component注解,说明

2017-06-24 15:12:28 4397

原创 JDK动态代理源码分析之二

在上篇文章里对JDK动态代理的方法和源码进行了简单的分析,这篇主要讲述怎么将JDK的代理生成的class文件进行输出。以下是调用的文件,其他的文件均和 JDK动态代理之一 中的一致(http://blog.csdn.net/weililansehudiefei/article/details/73655925)package com.weili.cn;import java.lang.

2017-06-24 00:08:56 1031

原创 JDK动态代理源码分析之一

一、JDK动态代理的Demo接口:package com.weili.cn;/** * Created by weili on 17/6/23. */public class Animal implements AnimalInterface { public void sound() { System.out.println("Animal miao m

2017-06-23 23:41:01 1822

原创 Leetcode 287 Find the Duplicate Number

int findDuplicate3(vector& nums){ if (nums.size() > 1) { int slow = nums[0]; int fast = nums[nums[0]]; while (slow != fast) { slow = nums[slow]; fast = nums[nums[fast]]; } fast =

2017-06-30 11:46:25 287

原创 Leetcode 442. Find All Duplicates in an Array

public class Solution { // when find a number i, flip the number at position i-1 to negative. // if the number at position i-1 is already negative, i is the number that occurs twice.

2017-06-30 10:25:56 227

原创 Leetcode 448 Find All Numbers Disappeared in an Array

public List findDisappearedNumbers(int[] nums) { List res = new ArrayList<>(); int n = nums.length; for (int i = 0; i < nums.length; i ++) nums[(nums[i]-1) % n] += n; f

2017-06-30 10:23:49 247

原创 Spring之bean加载源码阅读工程搭建

一、spring.xml<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/conte

2017-06-26 20:14:28 473

原创 SpringBoot Mock测试

今天用Mock测试Controller的时候,刚开始发现Controller里面的Service没有被实例化,也就是没有注入bean。原先的测试代码,我没有通过AutoWired注解注入repaymentScheduleController,而是直接在setup里面new了一个Controller。正常运行后的代码:package com.creditease.microloa

2017-06-26 13:33:45 7420

原创 SpringAOP的实现原理

AOPAOP(Aspect Oriented Programming),即面向切面编程,可以说是OOP(Object Oriented Programming,面向对象编程)的补充和完善。OOP引入封装、继承、多态等概念来建立一种对象层次结构,用于模拟公共行为的一个集合。不过OOP允许开发者定义纵向的关系,但并不适合定义横向的关系,例如日志功能。日志代码往往横向地散布在所有对象层次中,而与

2017-06-24 15:58:21 2091

基于单片机的录音笔

基于PIC单片机的录音笔设计方案,能够实现基本的录音和播放功能

2013-07-01

电子宠物设计

基于单片机的+电子宠物设计方案,通过这个方案可以使得宠物具有说话功能。

2013-07-01

空空如也

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

TA关注的人

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