个人简介

Echo Blog


江湖无名 安心练剑
  • java 表达式引擎
    背景 希望实现一些类似于 mybatis 的动态 sql,针对语句的判断,比如: test = "name != null and name != ''" 这里就需要一个表达式的引擎,从零实现目前比较耗费时间,就去看看有没有现成的。 mvel 比较老牌了,很强大,但是好久没更新了 参考地址: http://mvel.documentnode.com/ https://git...
    2020-06-21 07:11:16 | Java
  • 手写 Hibernate ORM 框架 06-spring mybatis 原理
    spring 整合时做了什么 这篇主要讲一个点,就是我们在结合spring去使用mybatis的时候,spring为我们做了什么事。 还是老套路,我们只讲过程思路,具体细节还望各位小伙伴找时间去研究,如果我全讲了,你们也都看懂了,那你们最多也就是感到一种获得感,而不是成就感,获得感是会随着时间的推移而慢慢减少的,所以我这里主要提供给大家一个思路,然后大家可以顺着这条思路慢慢摸索下去,从而...
    2020-06-21 07:11:16 | Java
  • 手写 Hibernate ORM 框架 05-mybatis 原理
    什么是 MyBatis ? MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。 MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。 MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。...
    2020-06-21 07:11:16 | Java
  • 手写 mybatis 系列(二)mybatis interceptor 插件机制详解
    前景回顾 第一节 从零开始手写 mybatis(一)MVP 版本 中我们实现了一个最基本的可以运行的 mybatis。 常言道,万事开头难,然后中间难。 mybatis 的插件机制是 mybatis 除却动态代理之外的第二大灵魂。 下面我们一起来体验一下这有趣的灵魂带来的痛苦与快乐~ 插件的作用 在实际开发过程中,我们经常使用的Mybaits插件就是分页插件了,通过分页插件我们可...
    2020-06-21 07:11:16 | Java
  • 手写 mybatis 系列(一)mybatis 手写 MVP 版本
    什么是 MyBatis ? MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。 MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。 MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。...
    2020-06-21 07:11:16 | Java
  • 手写 Hibernate ORM 框架 04-持久化实现
    本节内容 执行建表语句。 执行数据的保存 执行建表语句 Session package com.ryo.hibernate.simulator.hibernate; import com.mysql.jdbc.PreparedStatement; import com.ryo.hibernate.simulator.hibernate.util.ConnectionUtil; i...
    2020-06-21 07:11:16 | Java
  • 手写 Hibernate ORM 框架 03-配置文件读取, 数据库连接构建
    本节内容 hibernate.cfg.xml 配置文件的读取 数据库访问 Connection 的构建 hibernate.cfg.xml 读取 当然,代码中为了快速模拟,我们也可以将属性 hard code。 但此处为了模拟,就进行简单的实现 文件内容 hibernate.cfg.xml <?xml version='1.0' encoding='utf-8'...
    2020-06-21 07:11:16 | Java
  • 手写 Hibernate ORM 框架 02-实体 Bean 定义,建表语句自动生成
    本节内容 实体 Bean 的定义。 根据实体 Bean 生成对应的建表语句。 定义实体 Bean 简单的用户实体信息定义 package com.ryo.hibernate.simulator.model; import com.ryo.hibernate.simulator.hibernate.annotations.Column; import com.ryo.hibern...
    2020-06-21 07:11:16 | Java