yyf的博客

写博客是分享学习的一种方式,但更多的是收获自己所得到的;个人网站:http://www.yuyufeng.top...

排序:
默认
按更新时间
按访问量

借助一个数据库表来维护主键(mybatis调用存储过程)

创建主键表 CREATE TABLE `c_table_key` ( `table_name` varchar(50) NOT NULL COMMENT '需要创建主键的表名', `last_key` bigint(20) NOT NULL COMMENT '最后一次使用的主键,...

2018-09-20 16:34:43

阅读数:5

评论数:0

框架集成——SpringMVC与MyBatis集成(超详细)

SpringMVC与MyBatis是我们现在最流行的开发框架组合之一,这里我来整理一下框架的集成搭建过程 前言 使用IDE:IntelliJ IDEA JDK:1.8 打开IDEA,新建maven工程 第一步:打开IDEA,点击Create New Project 第二...

2018-08-24 11:04:38

阅读数:70

评论数:0

Spring源码阅读——ApplicationContext

Spring中提供了一个接口ApplicationContext,用于扩展BeanFactory中现有的功能。它提供了更多的功能。现在我们来看下它的实现: public ClassPathXmlApplicationContext(String[] configLocations, bo...

2018-07-17 16:33:28

阅读数:89

评论数:0

Spring源码阅读——bean的加载过程解析

前言 在上一节中,我们已经了解过Spring对bean从XML中提取,并且以BeanDefinition类型解析注册到Spring的DefaultListableBeanFactory中取了,那么,接下来就应该来看下我们在Spring中获取一个实例过程中,bean是如何加载成为我们需要的对象的了...

2018-07-09 16:42:52

阅读数:137

评论数:1

Spring源码阅读——bean提取注册过程

BeanDefinition定义及作用 BeanDefinition作为定义springBean文件中bean的接口,可以说是bean的抽象数据结构,它包括属性参数,构造器参数,以及其他具体的参数。当 BeanDefinition 注册完毕以后, Spring Bean 工厂就可以随时根据需要进...

2018-07-06 14:13:45

阅读数:123

评论数:0

Spring源码阅读——Core Container(核心容器)

Spring中的Core Container(核心容器)包含有Core、Beans、Context和Expression Language模块。Core和Beans模块是框架的基础部分,提供IoC(反转控制)和依赖注入特性。这里的基础概念是BeanFactory,它对Factory模式的金典实现来...

2018-07-06 14:01:17

阅读数:278

评论数:0

借助Spring的Resource去读取资源文件

在阅读Spring源码的过程中,我们可以看到,Spring的配置文件读取是通过ClassPathResource进行封装的,在日常的开发工作中,资源文件的加载也是经常用到的,可以直接使用Spring提供的类。而且可以使用该类支持的其他功能。 import org.springframework....

2018-07-05 10:45:19

阅读数:115

评论数:0

spring-boot-devtools在Idea中热部署方法使用

1、引入依赖 <dependency> <groupId>org.springframework.boot</groupId> &l...

2018-07-03 09:15:18

阅读数:130

评论数:0

MyBatis中自定义二级缓存(使用Redis做缓存)

在MyBatis中,默认的二级缓存Cache实现是PerpetualCache,而通常,这种方式满足不了分布式集群的项目,这时候,五门可以借助一些第三方服务来做缓存,比如Redis,下面,来尝试下用Redis做MyBatis的二级缓存

2018-06-25 16:50:41

阅读数:124

评论数:0

nginx配置https同时http请求转发到https上

#user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid l...

2018-06-19 13:42:47

阅读数:546

评论数:0

MyBatis源码阅读——MyBatis对事务的处理过程分析

事务管理器 在 MyBatis 中有两种类型的事务管理器(也就是 type=”[JDBC|MANAGED]”): <environments default="development"&...

2018-06-13 16:16:18

阅读数:233

评论数:0

MyBatis源码阅读——Spring加载MyBatis过程解析

我们平时在项目中都是用Spring来管理的,那么,Spring是如何管理MyBatis的呢?我们来一探究竟。 编程式加载MyBatis 要了解Spring是如何加载MyBatis的,我想还是先来回顾一下我们是如何用编程的方式去加载MyBatis框架的 String resource = &...

2018-06-12 11:34:48

阅读数:799

评论数:0

MyBatis源码阅读——MyBatis插件原理

前言 MyBatis 允许你在已映射语句执行过程中的某一点进行拦截调用。默认情况下,MyBatis 允许使用插件来拦截的方法调用包括。 Executor (update, query, flushStatements, commit, rollback, getTransaction, cl...

2018-06-11 16:26:56

阅读数:179

评论数:0

MyBatis源码阅读——MyBatis初始化流程解析

前言 在之前的几篇文章中,我们在源码中看到到了很多类,比如mapperRegistry、mappedStatements等,虽然我们知道它们都是在MyBatis初始化的时候完成加载的,那么我们还是有必要去了解一下其加载过程。 还是跟之前一样,写一个demo,去边debug 边阅读源码。 p...

2018-06-07 17:54:15

阅读数:168

评论数:0

MyBatis源码阅读——MyBatis缓存的原理解析

前言 MyBatis 包含一个非常强大的查询缓存特性,它可以非常方便地配置和定制。除了局部的 session 缓存,默认情况下是没有二级开启缓存的。那么MyBatis的一级缓存跟二级缓存在它的框架内部是如何实现的?我们去一探究竟吧。 一级缓存 一级缓存是默认开启的。当然你也可以关闭。在S...

2018-06-07 16:25:34

阅读数:157

评论数:0

MyBatis源码阅读——通过debug解析MyBatis运行流程

最近在阅读MyBatis框架的源码。发现它其实是一个非常值得阅读的框架。它灵活得运用了常见的设计模式去设计。值得我们去学习。我还是比较喜欢以debug阅读MyBatis的源码。

2018-06-07 13:22:08

阅读数:1391

评论数:1

MyBatis源码阅读——装饰器模式在MyBatis中的应用

MyBatis中关于Cache和CachingExecutor接口的实现类也使用了装饰者设计模式。Executor是MyBatis执行器,是MyBatis 调度的核心,负责SQL语句的生成和查询缓存的维护;CachingExecutor是一个Executor的装饰器,给一个Executor增...

2018-06-06 14:45:38

阅读数:146

评论数:0

设计模式——装饰器模式

装饰器模式 动态地给对象添加一些额外的职责。就功能来说装饰模式相比生成子类更为灵活。 结构 抽象组件(Component):需要装饰的抽象对象。 具体组件(ConcreteComponent):是我们需要装饰的对象 抽象装饰类(Decorator):内含指向抽象组件的引用及装饰者共有的...

2018-05-28 13:54:17

阅读数:107

评论数:0

数据结构——链表(C语言实现)

描述 用C语言实现数据结构中链表的操作 代码实现 #include <stdio.h> #include <malloc.h> typedef struct num { int data; stru...

2018-05-21 09:25:35

阅读数:171

评论数:0

数据结构——栈(C语言实现)

描述 用C语言实现数据结构中栈的操作 实现过程 #include <stdio.h> #include <stdlib.h> #include<string.h&gt...

2018-05-21 09:23:59

阅读数:97

评论数:0

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