首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
从零开始手写 mybatis (三)jdbc pool 从零实现数据库连接池
】的更多相关文章
手写MyBatis ORM框架实践
一.实现手写Mybatis三个难点 1.接口既然不能被实例化?那么我们是怎么实现能够调用的? 2.参数如何和sql绑定 3.返回结果 下面是Mybatis接口 二.Demo实现 1.创建Maven工程(开发工具Eclipse) 下一步 下一步 然后点击“完成” 2.配置pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema…
要想精通Mybatis?从手写Mybatis框架开始吧!
1.Mybatis组成 动态SQL Config配置 Mapper配置 2.核心源码分析 Configuration源码解析 SqlSessionFactory源码解析 SqlSession源码解析 SqlSessionManager源码解析 3.手写Mybatis框架 Mybatis是什么? Mybatis是一种半自动ORM框架,前身是iBatis,源于“Internet”和“abatis”的组合,除了POJO和映射关系之外,还需要编写SQL语句: Mybatis映射三要素: POJO 映…
手写mybatis框架笔记
MyBatis 手写MyBatis流程 架构流程图 封装数据 封装到Configuration中 1.封装全局配置文件,包含数据库连接信息和mappers信息 2.封装*mapper.xml映射文件 封装操作:Builder类 Builder类用来操作配置文件(全局配置文件和mapper映射文件),将配置数据封装到类中. XmlConfigBuilder 提供parse方法将dataSource信息封装到Configuration XmlMapperBuilder 提供parse方法将mappe…
手写MyBatis流程
MyBatis 手写MyBatis流程 架构流程图 封装数据 封装到Configuration中 1.封装全局配置文件,包含数据库连接信息和mappers信息 2.封装*mapper.xml映射文件 封装操作:Builder类 Builder类用来操作配置文件(全局配置文件和mapper映射文件),将配置数据封装到类中. XmlConfigBuilder 提供parse方法将dataSource信息封装到Configuration XmlMapperBuilder 提供parse方法将mappe…
java 从零开始手写 RPC (05) reflect 反射实现通用调用之服务端
通用调用 java 从零开始手写 RPC (01) 基于 socket 实现 java 从零开始手写 RPC (02)-netty4 实现客户端和服务端 java 从零开始手写 RPC (03) 如何实现客户端调用服务端? java 从零开始手写 RPC (04) -序列化 前面我们的例子是一个固定的出参和入参,固定的方法实现. 本节将实现通用的调用,让框架具有更广泛的实用性. 基本思路 所有的方法调用,基于反射进行相关处理实现. 服务端 核心类 RpcServer 调整如下: serverBo…
java 从零开始手写 RPC (03) 如何实现客户端调用服务端?
说明 java 从零开始手写 RPC (01) 基于 socket 实现 java 从零开始手写 RPC (02)-netty4 实现客户端和服务端 写完了客户端和服务端,那么如何实现客户端和服务端的调用呢? 下面就让我们一起来看一下. 接口定义 计算方法 package com.github.houbb.rpc.common.service; import com.github.houbb.rpc.common.model.CalculateRequest; import com.github…
java 从零开始手写 RPC (04) -序列化
序列化 java 从零开始手写 RPC (01) 基于 socket 实现 java 从零开始手写 RPC (02)-netty4 实现客户端和服务端 java 从零开始手写 RPC (03) 如何实现客户端调用服务端? 前面几节我们实现了最基础的客户端调用服务端,这一节来学习一下通讯中的对象序列化. 为什么需要序列化 netty 底层都是基于 ByteBuf 进行通讯的. 前面我们通过编码器/解码器专门为计算的入参/出参进行处理,这样方便我们直接使用 pojo. 但是有一个问题,如果想把我们的…
java 从零开始手写 RPC (07)-timeout 超时处理
<过时不候> 最漫长的莫过于等待 我们不可能永远等一个人 就像请求 永远等待响应 超时处理 java 从零开始手写 RPC (01) 基于 socket 实现 java 从零开始手写 RPC (02)-netty4 实现客户端和服务端 java 从零开始手写 RPC (03) 如何实现客户端调用服务端? java 从零开始手写 RPC (04) 序列化 java 从零开始手写 RPC (05) 基于反射的通用化实现 必要性 前面我们实现了通用的 rpc,但是存在一个问题,同步获取响应的时候没有…
《手写Mybatis》第5章:数据源的解析、创建和使用
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 管你吃几碗粉,有流量就行! 现在我们每天所接收的信息量越来越多,但很多的个人却没有多少分辨知识的能力.很多知识信息也只是蹭热点的泛知识,但泛知识只是一种空泛.不成系统.甚至可能是错误的信息群,不过就是这样的信息却给内容消费者一种"成功获取了知识"吃饱的幻觉,却丧失了对知识层次的把控. 而作为一个本身就很理科的程序员来说,如果都是被泛知识充斥,花费着自己的精力和时间,没有经…
手写mybatis框架-增加缓存&事务功能
前言 在学习mybatis源码之余,自己完成了一个简单的ORM框架.已完成基本SQL的执行和对象关系映射.本周在此基础上,又加入了缓存和事务功能.所有代码都没有copy,如果也对此感兴趣,请赏个Star. 项目地址:simple-ibatis 初版博文地址:博客园博文 增加代码详解 缓存 com.simple.ibatis.cache 缓存接口-Cache public interface Cache { /**放入缓存*/ void putCache(String key,Object val…