自定义博客皮肤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)
  • 收藏
  • 关注

原创 Spring AOP源码解析之通知初始化

  这段时间的项目里使用到了Spring aop的相关功能,使用起来还是比较简单的。也知道Spring aop是通过java和cglib建立动态代理的方式实现切面的相关功能。但是实现动态代理的具体过程还是不太清除,为了能够更进一步的了解aop的原理,决定一读aop的源码。  目前使用Spring aop时大多都是通过注解的方式,那么Spring中就一定有相应的解析器去解析这个注解,在Spring...

2019-08-27 23:58:22 179

原创 Spring MVC探秘之请求处理

  之前分析了Spring MVC的初始化过程,主要就是对WebApplicationContext和相关组件进行初始化。今天主要分析下Spring MVC处理请求的过程。  初始化时主要分析了HttpServetBean、FrameworkServlet、DispatcherServlet三个类,在处理请求时,HttpServletBean并没有参与具体的处理过程,因此主要介绍Framewor...

2019-08-24 11:52:48 203

原创 spring使用slf4j代理log4j

  最近刚把进公司的第一个项目忙完,有点空闲时间,于是就打算把公司项目会使用的一些框架看一看,之前的项目是在别人搭好的框架之上写代码,但是要让我一个人从无到有搭建一个项目框架我是做不到的。在之前的项目中我大概使用了这样几种框架:spring, slf4j, mybatis, pigeon等。  首先我打算从slf4j开始。slf4j的全称为Simple Logging Facade for Ja...

2019-08-21 22:55:16 551

原创 spring-mybatis 配置

mybatis文档  最近写了一些mybatis相关的程序,但是是在别人写的框架和配置下写的,只是照猫画虎的单纯写了一些映射文件,并没有对mybatis有更深的理解,因此这几天看了一些关于mybatis相关的内容,先记录如下。  首先简单的介绍下MyBatis,MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和...

2019-08-21 22:51:26 195

原创 mybatis 源码分析

MyBatis源码分析1. Mybatis的初始化  在利用spring配置mybatis时,需要做出如下配置,mybatis初始化时便利用如下配置生成SqlSessionFactory,SqlSessionTemplate等实例。<!--数据源信息--><bean id="testSource" class="org.apache.commons.dbcp2.Basi...

2019-08-21 22:47:46 83

原创 Spring MVC探秘之初始化

  这篇文章主要分析Spring MVC的初始化过程,力争把Spring MVC的初始化完整清晰的表达出来。总体继承结构  Spring MVC的初始化和处理过程主要涉及三个类,分别是HttpServletBean、FrameworkServlet、DispatcherServlet,其继承关系如下图所示:  从图中可以看到,HttpServletBean不仅继承了HttpServlet类...

2019-08-21 22:43:19 127

原创 spring aop介绍

介绍  AOP(Aspect-Oriented Programming), 即 面向切面编程, 它与 OOP( Object-Oriented Programming, 面向对象编程) 相辅相成, 提供了与 OOP 不同的抽象软件结构的视角。在 OOP 中, 我们以类(class)作为我们的基本单元, 而 AOP 中的基本单元是 Aspect(切面)。aop术语Aspect(切面)  as...

2019-08-15 23:52:03 81

原创 XPath和JsonPath

  最近在做一个关于可配置爬虫的项目,里面涉及到一些针对爬取内容自定义解析的需求,为了实现这个需求需要能够对html(针对网页)和json(针对app)实现字段定位,在经过一些调研以及参考了部分爬虫框架后,发现了XPath和JsonPath这两种描述语言。XPath  XPath,全称 XML Path Language,即 XML 路径语言,它是一门可用来在 XML 文档中对元素和属性进行遍...

2019-08-13 23:45:59 2475

原创 Java并发编程

这几天看了《实战java高并发程序设计》这本书,在此做个简短的记录。首先是Java并发中的同步控制组件。1.volatile 当你用 volatile去申明一个变量时,就等于告诉了虚拟机,这个变量极有可能会被某些程序或者线程修改。为了确保这个变量被修改后,应用程序范围内的所有线程都能够“看到”这个改动,虚拟机就必须采用一些特殊的手段,保证这个变量的可见性等特点。但是v...

2019-03-19 22:53:16 76

原创 关于设计模式的一些理解

这段时间看了《设计模式》这本书,但看了后感觉自己对其的理解不深,所以决定写这篇博客来加深自己对于设计模式的理解。 前段时间看的一些设计模式决定等过两天在慢慢写,今天先把今天看的mediator(中介者),memento(备忘录),observer(观察者)写下来。 1,首先是mediator,我感觉它的主要作用是降低一系列互相作用的对象之间的耦合关系,因为就像蜘蛛网一样,如果对象之间

2017-02-24 23:35:35 396

原创 linux下socket编程和epoll的使用

这两天在学Linux下的网络编程,于是便看了些关于socket和epoll的资料。 首先介绍socket,socket编程我之前也接触过,不过是在windows下接触的。和windows不同的是,windows下关于socket编程,是直接给你一个socket的类,在上面建立自己的实例。而在linux中,你在建立socket时,它会给你一个文件描述符(其实就是一个整数),这个整数和内核为你建

2017-02-19 23:32:27 3978 1

原创 vim的配置和插件安装

由于自己对自己未来的规划是做一个服务器后端开发人员,所以虽然自己非常不习惯,但还是开始了将自己的开发平台转往Linux的路程。而我在网上论坛和知乎上浸淫多年得到的心得告诉我,要想在linux上做好开发,一款优秀的编译器是必不可少的,那么自然而然我便要开始学习vim的使用。但是在linux上裸装的vim是万万不能满足自己的要求的(但也可能是自己的水品太烂用不起来),浴室我便开始在网上各种搜集资料

2017-02-12 23:40:47 330

空空如也

空空如也

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

TA关注的人

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