java
拉弓射代码
有限的人生,无限的代码
展开
-
Java并发编程
这几天看了《实战java高并发程序设计》这本书,在此做个简短的记录。首先是Java并发中的同步控制组件。1.volatile 当你用 volatile去申明一个变量时,就等于告诉了虚拟机,这个变量极有可能会被某些程序或者线程修改。为了确保这个变量被修改后,应用程序范围内的所有线程都能够“看到”这个改动,虚拟机就必须采用一些特殊的手段,保证这个变量的可见性等特点。但是v...原创 2019-03-19 22:53:16 · 82 阅读 · 0 评论 -
XPath和JsonPath
最近在做一个关于可配置爬虫的项目,里面涉及到一些针对爬取内容自定义解析的需求,为了实现这个需求需要能够对html(针对网页)和json(针对app)实现字段定位,在经过一些调研以及参考了部分爬虫框架后,发现了XPath和JsonPath这两种描述语言。XPath XPath,全称 XML Path Language,即 XML 路径语言,它是一门可用来在 XML 文档中对元素和属性进行遍...原创 2019-08-13 23:45:59 · 2529 阅读 · 0 评论 -
Spring MVC探秘之请求处理
之前分析了Spring MVC的初始化过程,主要就是对WebApplicationContext和相关组件进行初始化。今天主要分析下Spring MVC处理请求的过程。 初始化时主要分析了HttpServetBean、FrameworkServlet、DispatcherServlet三个类,在处理请求时,HttpServletBean并没有参与具体的处理过程,因此主要介绍Framewor...原创 2019-08-24 11:52:48 · 223 阅读 · 0 评论 -
spring aop介绍
介绍 AOP(Aspect-Oriented Programming), 即 面向切面编程, 它与 OOP( Object-Oriented Programming, 面向对象编程) 相辅相成, 提供了与 OOP 不同的抽象软件结构的视角。在 OOP 中, 我们以类(class)作为我们的基本单元, 而 AOP 中的基本单元是 Aspect(切面)。aop术语Aspect(切面) as...原创 2019-08-15 23:52:03 · 88 阅读 · 0 评论 -
Spring MVC探秘之初始化
这篇文章主要分析Spring MVC的初始化过程,力争把Spring MVC的初始化完整清晰的表达出来。总体继承结构 Spring MVC的初始化和处理过程主要涉及三个类,分别是HttpServletBean、FrameworkServlet、DispatcherServlet,其继承关系如下图所示: 从图中可以看到,HttpServletBean不仅继承了HttpServlet类...原创 2019-08-21 22:43:19 · 137 阅读 · 0 评论 -
mybatis 源码分析
MyBatis源码分析1. Mybatis的初始化 在利用spring配置mybatis时,需要做出如下配置,mybatis初始化时便利用如下配置生成SqlSessionFactory,SqlSessionTemplate等实例。<!--数据源信息--><bean id="testSource" class="org.apache.commons.dbcp2.Basi...原创 2019-08-21 22:47:46 · 94 阅读 · 0 评论 -
spring-mybatis 配置
mybatis文档 最近写了一些mybatis相关的程序,但是是在别人写的框架和配置下写的,只是照猫画虎的单纯写了一些映射文件,并没有对mybatis有更深的理解,因此这几天看了一些关于mybatis相关的内容,先记录如下。 首先简单的介绍下MyBatis,MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和...原创 2019-08-21 22:51:26 · 212 阅读 · 0 评论 -
spring使用slf4j代理log4j
最近刚把进公司的第一个项目忙完,有点空闲时间,于是就打算把公司项目会使用的一些框架看一看,之前的项目是在别人搭好的框架之上写代码,但是要让我一个人从无到有搭建一个项目框架我是做不到的。在之前的项目中我大概使用了这样几种框架:spring, slf4j, mybatis, pigeon等。 首先我打算从slf4j开始。slf4j的全称为Simple Logging Facade for Ja...原创 2019-08-21 22:55:16 · 579 阅读 · 0 评论 -
Spring AOP源码解析之通知初始化
这段时间的项目里使用到了Spring aop的相关功能,使用起来还是比较简单的。也知道Spring aop是通过java和cglib建立动态代理的方式实现切面的相关功能。但是实现动态代理的具体过程还是不太清除,为了能够更进一步的了解aop的原理,决定一读aop的源码。 目前使用Spring aop时大多都是通过注解的方式,那么Spring中就一定有相应的解析器去解析这个注解,在Spring...原创 2019-08-27 23:58:22 · 196 阅读 · 0 评论