一框架介绍 1.Mybatis介绍 ​ MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis.是一个基于Java的持久层框架. ​ Mybatis本质和Hibernate等持久层框架一样,底层均是基于jdbc的,作用均是实现数据的持久化. 2.Mybatis和Hibernate对比 对比项 Mybatis Hibernate 底层原理 基于jdbc 基于jd…
1.什么是Mybatis? Mybatis是一个优秀持久层框架,提供了对数据库的一系列操作(增删改查).Mybatis可以避免重复的写JDBC代码,让我们以较少的代码实现对数据库的操作,从而提高开发效率.Mybatis的特点是持久层(Dao)零实现,即只需要写接口,不需要写实现类. 2.Mybatis的配置 2.1 配置流程图 Resources:资源类,用于读取总配置文件SqlSessionFactoryBuilder:会话工厂构造类,通过读取的总配置文件构建会话工厂SqlSessionFac…
官方文档 传送门 下载地址 传送门 MyBatis Generator(MBG)简介: MyBatis Generator(MBG)是MyBatis MyBatis 和iBATIS的代码生成器.它将为所有版本的MyBatis以及版本2.2.0之后的iBATIS版本生成代码.它将内省数据库表(或许多表),并将生成可用于访问表的工件.这减少了设置对象和配置文件以与数据库表交互的初始麻烦.MBG寻求对简单CRUD(创建,检索,更新,删除)的大部分数据库操作产生重大影响.您仍然需要为连接查询或存储过程手…
MyBatis + Spring整合开发 a)使用Spring容器用单例模式管理Mybatis的sqlSessionFactory:b)使用Spring管理连接池.数据源等:c)将Dao/Mapper动态代理对象注入到Spring容器中,使用时直接获取: 一.MyBatis整合Spring框架 a)导入所需的包: b)创建Mybatis主配置文件sqlMapConfig.xml: <?xml version="1.0" encoding="UTF-8" ?&g…
hibernate框架的搭建 Hibernate框架的概述 1. Hibernate框架的概述 * Hibernate称为 * Hibernate是一个开放源代码的对象关系映射(ORM)框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库. * Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用. * Hibernate是轻量级JavaEE应用的持久层解决方案…
向数据库中插入数据时,大多数情况都会使用自增列或者UUID做为主键.主键的值都是插入之前无法知道的,但很多情况下我们在插入数据后需要使用刚刚插入数据的主键,比如向两张关联表A.B中插入数据(A的主键是B的外键),向A表中插入数据之后,向B表中插入数据时需要用到A的主键. 比如添加一个用户,同时返回插入用户后得到的用户id: /** * 添加用户信息 * @param user * @throws Exception */ public int insertUser(User user) thro…
JDBC编程中的问题     1. 将SQL语句硬编码到Java代码,不利于系统维护.         设想如何解决:将SQL单独抽取出来,在配置文件(xml方式.properties文件)进行配置.     2. 数据库连接不能重复利用,对数据库资源是一中浪费.         设想如何解决:使用数据库连接池管理数据库连接.     3. 向Statement设置参数时,对于参数的位置通过硬编码指定,不利于系统维护.         设想如何解决:是否能够自动将Java对象的值设置到State…
什么是框架 框架就是一个架子,表演节目,舞台已经搭建好,表演什么节目,看自己的需求了. 框架是一个半成品,对于Java语言来说,框架就是封装了别人的代码.在框架的基础上我们在进一步开发,拿来主义. 框架解决什么问题 解决的是技术整合问题.软件开发环境和规模都很大,不可能任何一个项目的代码都从零开始,此时就需要一个非常优秀的框架把基础技术整合完毕,我们在他的基础上进一步开发.提高性能,易扩展,易维护,最终提高整个团队的开发效率. 什么时候使用框架 企业级大型项目开发,避免大炮打蚊子. 怎么使用框架…
学习过Hibernate框架的伙伴们很容易就能简单的配置各种映射关系(Hibernate框架的映射关系在我的blogs中也有详细的讲解),但是在Mybatis框架中我们又如何去实现 一对多的关系映射呢? 其实很简单 首先我们照常先准备前期的环境(具体解释请  参考初识Mybatis进行增.删.改.查 blogs )这里我就直接上代码了 主配置文件:Configuration.xml <?xml version="1.0" encoding="UTF-8" ?&…
Mybatis自定义插件生成雪花ID做为主键项目 先附上项目项目GitHub地址 spring-boot-mybatis-interceptor 有关Mybatis雪花ID主键插件前面写了两篇博客作为该项目落地的铺垫. 1.Mybatis框架---Mybatis插件原理 2.java算法---静态内部类实现雪花算法 该插件项目可以直接运用于实际开发中,作为分布式数据库表主键ID使用. 一.项目概述 1.项目背景 在生成表主键ID时,我们可以考虑主键自增 或者 UUID,但它们都有很明显的缺点 主…