
mybatis
文章平均质量分 84
御前两把刀刀
一个善于总结的,一个喜欢书法的全栈程序员
展开
-
mybatis系列六:使用getMapper方式实现面向接口的编程
mybatis有一个种面向接口的编程方式,即只写接口,不用写接口实现类。实现这种编程方式的关键是: 1.mapper文件的命名空间必须是包名.接口名的形式,如:com.obtk.dao.IStudentDao 2.mapper文件里面的select标签的id值必须和接口里面的方法名称要一致具体案例:接口:package com.obtk.dao;import ja原创 2017-12-08 23:54:38 · 4227 阅读 · 1 评论 -
mybatis系列三:使用MyBatis实现持久化操作
这里以学生表为例讲解增删改查操作=================================mapper文件========================<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "mybatis-3-mapper.dtd"> select * from studen原创 2017-12-06 11:57:44 · 2204 阅读 · 0 评论 -
mybatis系列四:动态SQL
动态SQL是MyBatis的—个强大的特性。在使用JDBC操作数据时,如果查询条件特别多,将条件串联成SQL字符串是一项痛苦的事情,通常的解决方法是写很多的if-else条件语句和字符串进行拼接,并确保不能忘了空格或在字段的最后省略逗号。MyBatis使用一种强大的动态SQL语言来改进这种情形,动态SQL基于OGNL的表达式,可使我们方便地在SQL语句中实现某些逻辑。一 常用标...原创 2017-12-06 21:50:25 · 539 阅读 · 0 评论 -
mybatis系列二:mybatis工具类及其使用
我们知道在JDBC中获取并管理好Connection对象是很重要的,同样获取和管理SqlSession在MyBatis中也是很重要的。理解SqlSession相关类的作用域和生命周期才能很好地管理和使用好这些对象。1.SqlSessionFactoryBuilder 这个类可以被实例化、使用和丢弃。一旦创建了SqISessionFactory后,这个类就不需要存在了。因此SqlSes原创 2017-12-05 23:34:36 · 2314 阅读 · 0 评论 -
mybatis系列一:入门篇
环境:mybatis3.2.2 jdk1.7一 MyBatis介绍 MyBatis本是apache的一个开源的项目,原来称为iBatis, 2010年这个项目由apache software Foundation迁移到了google code,并且改名为MyBatis。 MyBatis是支持普通SQL查询、存储过程和高级映射的优秀持久层框架,是一个SQL映射框架。MyB...原创 2017-12-05 23:28:43 · 1065 阅读 · 0 评论 -
mybatis系列八:一对多关联查询
这里仍然以系表(department)和学生表(student)为例来讲解。系和学生是典型的一对多的关系。一对多关联我们使用的是collection 标签。collection 标签如何使用,下面我们来看具体的案例。========================StudentMapper.xml====================<!DOCTYPE mapper PUBLI原创 2017-12-09 22:35:49 · 421 阅读 · 0 评论 -
mybatis系列十一:mybatis注解配置
MyBatis 3构建在基于全面且强大的Java配置API上。该配置API是基于XML的MyBatis配置的基础,也是新的基于注解配置的基础。注解提供了一种简单的方式来实现简单映射语句,而不会引入大量的开销。Mybatis常用注解对应的目标和标签如表所示:注解目标对应的XML标签@CacheNamespace类@CacheName原创 2017-12-10 23:14:16 · 3207 阅读 · 0 评论 -
mybatis系列十:mybatis缓存机制
MyBatis具有非常强大的查询缓存特性,它可以方便地配置和定制。缓存可以进行全局的配置,也可以针对映射语句进行配置。MyBatis的缓存分为一级缓存和二级缓存,一级缓存指的是在session 内,session没有关闭时,执行同样的SQL语句会使用的缓存。如果参数改变,缓存就会失效。而二级缓存可以被所有的SqlSession共享,下面指的是对二级缓存的配置。 1.MyB...原创 2017-12-10 22:55:33 · 543 阅读 · 0 评论 -
mybatis系列九:利用业务实体类和hashmap进行关联
其实mybatis的关联是很灵活的,可以不用任何关联配置。这里介绍两种关联方式,可以针对于任何关联操作,不管是几对几。方式一:利用业务实体类进行关联sql配置 SELECT s.stuId,s.stuName,s.gender,s.age,d.departName FROM student s LEFT JOIN department d ON s.deptIdd=d.原创 2017-12-09 23:25:26 · 1190 阅读 · 1 评论 -
mybatis系列五:使用pagehelper5插件进行分页
PageHelper是目前最强大最好用的分页插件。使用PageHelper插件一定要注意jar包之间的依赖关系,否则就死活出不来结果呀!!比方说作者这里使用的是pagehelper-5.0.2.jar jsqlparser-0.9.5.jar mybatis-3.2.8。那么我为啥知道版本之间的依赖关系是这样的呢,请看下图:废话不多说了,下面来看具体的实例。要使原创 2017-12-08 23:33:20 · 7319 阅读 · 0 评论 -
mybatis系列七:多对一关联查询
有了前面的基础,对一些简单的应用是可以处理的,但在实际项目中,经常是关联表的查询,比如最常见到的多对一,一对多等。这些查询是如何处理的呢,这一讲我们就利用学生表(Student)和系表(Department),多对一的关系,来讲这个问题。 对应的sql脚本请查看前面的博文。=================实体类StudentEntity.java===============原创 2017-12-09 17:29:01 · 453 阅读 · 0 评论 -
mybatis系列十二:动态sql的注解配置
动态sql也可以采用注解来完成注解对应的sql类型如下所示一 先重点来关注查询,用注解进行动态sql查询有两种方式用script标签包围,然后像xml语法一样书写 @Select({ "<script>", "select * From student where 1=1", "<when test='gender!=null'>...原创 2019-01-15 22:19:10 · 668 阅读 · 0 评论