- 聊聊Mybatis的Executor之模板方法模式模板方法模式通过模板方法来指定流程,具体的子类来实现具体的逻辑。我们看一下Executor接口,它的实现类有BaseExecutor抽象类和CachingExecutor类 BaseExecutorBaseExecutor抽象类作为模板方法的抽象模板类,它把缓存和事务进行实现,具体变化的对数据库操作的部分由子类去实现 提交事务方法我们先说说... 聊聊Mybatis的Executor之模板方法模式模板方法模式通过模板方法来指定流程,具体的子类来实现具体的逻辑。我们看一下Executor接口,它的实现类有BaseExecutor抽象类和CachingExecutor类 BaseExecutorBaseExecutor抽象类作为模板方法的抽象模板类,它把缓存和事务进行实现,具体变化的对数据库操作的部分由子类去实现 提交事务方法我们先说说...
- 聊聊Mybatis的事务模块 工厂模式中的产品 JdbcTransaction类 获取连接 事务的提交和回滚 ManagedTransaction类 事务的提交和回滚 关闭连接 工厂模式中的工厂 总结 聊聊Mybatis的事务模块mybatis定义了自己的事务接口来实现事务,这里同样也使用了工厂模式 工厂模式中的产品Transaction接口相当于工厂模式中的产品的角色,我们不妨看看他的接... 聊聊Mybatis的事务模块 工厂模式中的产品 JdbcTransaction类 获取连接 事务的提交和回滚 ManagedTransaction类 事务的提交和回滚 关闭连接 工厂模式中的工厂 总结 聊聊Mybatis的事务模块mybatis定义了自己的事务接口来实现事务,这里同样也使用了工厂模式 工厂模式中的产品Transaction接口相当于工厂模式中的产品的角色,我们不妨看看他的接...
- 聊聊Mybatis的日志模块的适配器模式我们在开发中日志是必不可少的一部分,而市场中有很多日志框架供我们使用,mybatis作为一个开源框架需要兼容这些框架,mybatis用了适配器模式来兼容这些框架,适配器模式就是通过组合的方式,将需要适配的类转为使用者能够使用的接口下面咱们分析一下mybatis的日志模块mybatis定义了自己的Log接口 Log接口下面是Log接口的定义:publi... 聊聊Mybatis的日志模块的适配器模式我们在开发中日志是必不可少的一部分,而市场中有很多日志框架供我们使用,mybatis作为一个开源框架需要兼容这些框架,mybatis用了适配器模式来兼容这些框架,适配器模式就是通过组合的方式,将需要适配的类转为使用者能够使用的接口下面咱们分析一下mybatis的日志模块mybatis定义了自己的Log接口 Log接口下面是Log接口的定义:publi...
- 初次学习MyBatis,自己花了不少时间,理解一件事物是需要时间的。经过多次反复的理解,你的认知能力就可以得到提升。以下是学习MyBatis的一些理解认识,技术理解上若有不当之处,敬请朋友们提出宝贵意见,以此共勉! 感触:要想真正理解框架,应该深入到底层实现代码中去。只有这样,才能够真正理解其框架内涵,或许还可以写出个性化的框架喲! 基本的演变流程为:JDBC... 初次学习MyBatis,自己花了不少时间,理解一件事物是需要时间的。经过多次反复的理解,你的认知能力就可以得到提升。以下是学习MyBatis的一些理解认识,技术理解上若有不当之处,敬请朋友们提出宝贵意见,以此共勉! 感触:要想真正理解框架,应该深入到底层实现代码中去。只有这样,才能够真正理解其框架内涵,或许还可以写出个性化的框架喲! 基本的演变流程为:JDBC...
- 今天在利用excel处理业务数据的时候开始打算一条一条插入数据库!因为要做数据校验和数据保存返回id之后进行其他表也插入!大约有30000多条数据库吧!花了大约3-5分钟,前端也会出现超时请求问题、让我意识到一条一条插入影响性能,但是因为业务逻辑的需要,又不得不一条一条插入,后面改变了思维还是必须批量插入数据!并将其他表也需要保存的数据也临时存在Java对象中!在主对象保存之后进行遍历获取插... 今天在利用excel处理业务数据的时候开始打算一条一条插入数据库!因为要做数据校验和数据保存返回id之后进行其他表也插入!大约有30000多条数据库吧!花了大约3-5分钟,前端也会出现超时请求问题、让我意识到一条一条插入影响性能,但是因为业务逻辑的需要,又不得不一条一条插入,后面改变了思维还是必须批量插入数据!并将其他表也需要保存的数据也临时存在Java对象中!在主对象保存之后进行遍历获取插...
- 聊聊mybatis的反射之对象工厂 DefaultObjectFactory默认对象工厂类 property包 PropertyCopier PropertyNamer PropertyTokenizer 总结 聊聊mybatis的反射之对象工厂今天的这篇文章会给大家讲解一下Mybatis的反射模块的一个重要的概念,那就是对象工厂。ObjectFactory是对象工厂接口,mybatis可... 聊聊mybatis的反射之对象工厂 DefaultObjectFactory默认对象工厂类 property包 PropertyCopier PropertyNamer PropertyTokenizer 总结 聊聊mybatis的反射之对象工厂今天的这篇文章会给大家讲解一下Mybatis的反射模块的一个重要的概念,那就是对象工厂。ObjectFactory是对象工厂接口,mybatis可...
- 聊聊mybatis的反射之Reflector类 Reflector的构造方法 Reflector的 addGetMethods() 总结 聊聊mybatis的反射之Reflector类反射是一块重要的内容,java中的反射让我们在程序运行的时候可以获取到java对象的属性和方法,mybatis有自己的反射工具箱模块,下面我就简单说一下mybatis 反射工具箱的一些类和方法Reflecto... 聊聊mybatis的反射之Reflector类 Reflector的构造方法 Reflector的 addGetMethods() 总结 聊聊mybatis的反射之Reflector类反射是一块重要的内容,java中的反射让我们在程序运行的时候可以获取到java对象的属性和方法,mybatis有自己的反射工具箱模块,下面我就简单说一下mybatis 反射工具箱的一些类和方法Reflecto...
- 聊聊mybatis的架构模块 基础层 类型转换模块 数据源模块 binding模块 缓存模块 反射工具模块 解析器模块 日志模块 事务管理模块 核心处理层 配置解析模块 sql解析和scripting模块 总结 聊聊mybatis的架构模块mybatis相信大家都用过,入门级的连接数据库并操作的就是jdbc,通过官方的介绍,我们知道mybatis有三层架构:基础支撑层,核心处理层和接口层,... 聊聊mybatis的架构模块 基础层 类型转换模块 数据源模块 binding模块 缓存模块 反射工具模块 解析器模块 日志模块 事务管理模块 核心处理层 配置解析模块 sql解析和scripting模块 总结 聊聊mybatis的架构模块mybatis相信大家都用过,入门级的连接数据库并操作的就是jdbc,通过官方的介绍,我们知道mybatis有三层架构:基础支撑层,核心处理层和接口层,...
- 目录什么是是mybatis?什么是持久层?什么是框架MyBatis简化jdbc代码MyBatis操作练习项目结构图 xml配置文件 pom.xml文件内容logback.xml内容userMapper.xml内容mybatis-config.xml内容几个类下com.pojo.User类com.MyBatisDemo类运行结果MyBatis操作数据库什么是是mybatis?MyBatis是... 目录什么是是mybatis?什么是持久层?什么是框架MyBatis简化jdbc代码MyBatis操作练习项目结构图 xml配置文件 pom.xml文件内容logback.xml内容userMapper.xml内容mybatis-config.xml内容几个类下com.pojo.User类com.MyBatisDemo类运行结果MyBatis操作数据库什么是是mybatis?MyBatis是...
- 在学习mybatis框架的过程中,我们都知道动态 sql 是 mybatis 的主要特性之一,在 mapper 中定义的参数传到 xml 中之后,在查询之前 mybatis 会对其进行动态解析。mybatis 为我们提供了两种支持动态 sql 的语法:#{} 以及 ${}。那么它们之间的区别是什么呢? 在学习mybatis框架的过程中,我们都知道动态 sql 是 mybatis 的主要特性之一,在 mapper 中定义的参数传到 xml 中之后,在查询之前 mybatis 会对其进行动态解析。mybatis 为我们提供了两种支持动态 sql 的语法:#{} 以及 ${}。那么它们之间的区别是什么呢?
- 用where标签这个标签比较只能,它的作用就是会动态的替换掉第一个条件前的and。作用:==替换where关键字会动态的去掉第一个条件前的 and如果所有的参数没有值则不加where关键字==那么我们用这个标签的时候,可以给第一个条件加上and。来尝试使用。-- </select>--> <select id="selectByDynamicCondition" resultM... 用where标签这个标签比较只能,它的作用就是会动态的替换掉第一个条件前的and。作用:==替换where关键字会动态的去掉第一个条件前的 and如果所有的参数没有值则不加where关键字==那么我们用这个标签的时候,可以给第一个条件加上and。来尝试使用。-- </select>--> <select id="selectByDynamicCondition" resultM...
- MyBatis什么是框架?它是一个半成品软件,将所有的公共的、重复的功能解决掉,帮助程序快速高效的进行开发,它是可复用的、可扩展的。什么是MyBatis框架?MyBatis本是 apache 的一个开源项目 iBatis,2010年这个项目由 apache software foundation 迁移到了 google code,并且改名为MyBatis。2013年迁移到GitHub。MyB... MyBatis什么是框架?它是一个半成品软件,将所有的公共的、重复的功能解决掉,帮助程序快速高效的进行开发,它是可复用的、可扩展的。什么是MyBatis框架?MyBatis本是 apache 的一个开源项目 iBatis,2010年这个项目由 apache software foundation 迁移到了 google code,并且改名为MyBatis。2013年迁移到GitHub。MyB...
- 编辑MyBatis快速入门——第六章、MyBatis分页demo测试目录1、映射mapper.xml2、映射接口ProductMapper3、ProductDAO.java数据层4、GetInfoServlet.java的servlet文件5、JSP页面6、访问路径7、访问效果1、映射mapper.xml<?xml version="1.0" encoding="UTF-8" ?><!... 编辑MyBatis快速入门——第六章、MyBatis分页demo测试目录1、映射mapper.xml2、映射接口ProductMapper3、ProductDAO.java数据层4、GetInfoServlet.java的servlet文件5、JSP页面6、访问路径7、访问效果1、映射mapper.xml<?xml version="1.0" encoding="UTF-8" ?><!...
- 编辑MyBatis快速入门——第六章、MyBatis拦截器接口(二)目录MyBatis快速入门——第六章、MyBatis拦截器接口(二)1、修改返回值2、创建【CamelHumpInterceptor】 文件1、修改返回值<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD... 编辑MyBatis快速入门——第六章、MyBatis拦截器接口(二)目录MyBatis快速入门——第六章、MyBatis拦截器接口(二)1、修改返回值2、创建【CamelHumpInterceptor】 文件1、修改返回值<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD...
- 编辑MyBatis快速入门——第五章、maven整合Mybatis&Servlet_tomcat创建maven项目并引入mybatis、tomcat、servlet、目录MyBatis快速入门——第五章、maven整合Mybatis&Servlet_tomcat创建maven项目并引入mybatis、tomcat、servlet、1、创建maven病引入mybatis的包3、配置tom... 编辑MyBatis快速入门——第五章、maven整合Mybatis&Servlet_tomcat创建maven项目并引入mybatis、tomcat、servlet、目录MyBatis快速入门——第五章、maven整合Mybatis&Servlet_tomcat创建maven项目并引入mybatis、tomcat、servlet、1、创建maven病引入mybatis的包3、配置tom...
上滑加载中
推荐直播
热门标签