Mybatis
文章平均质量分 77
搬砖小松鼠
贮藏坚果,以备过冬!
展开
-
ssm框架学习---mybatis单独使用各个文件编写
mybatis作为一个持久层的框架,依据上一篇mybatis框架结构(1)SqlMapConfig.xml,它的配置结构中,当没有和spring整合之前,由mybatis来管理事务和数据源,配置文件如下:<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/d原创 2016-12-14 14:07:23 · 1226 阅读 · 0 评论 -
ssm框架学习---mybatis中延迟加载实现
在处理查询结果中,如果需要延迟加载,即属于对查询结果有要求的那种,需要使用resultMap来实现,并结合association或者collection,假设需求时查询订单时延迟加载所关联的用户信息,定义mapper.xml文件如下; <!--配置关联的用户原创 2016-12-20 13:31:43 · 2416 阅读 · 0 评论 -
ssm框架学习---mybatis中一对多关系的查询
(1)使用resultMap处理一对多关系是,将一对多,多的那部分数据用集合来存储,使用collection标签(2)如果使用resultType来处理,需要手动去重复,然后把多的那部分关系提取出来放到一个list中比如一个客户可能对应多个订单,如下mapper.xml文件定义如下:<!DOCTYPE mapper PUBLIC "-//mybatis.org//DT原创 2016-12-19 19:57:50 · 9403 阅读 · 0 评论 -
ssm框架学习---mybatis中处理一对一对应关系
1,对于一对一对应关系,有两种方式来实现(1)一种是使用resultType,这个有一个要求就是查询出来的列和返回的java对象的列的名称需要对应,这里我们想要实现依据订单来查询对应订单的下单用户的信息的查询,因此需要们自己建立pojo,首先给出客户,订单,商品的定义类如下:package com.ajin.mybatis.model;/** * Created by ajin on原创 2016-12-19 17:16:58 · 2518 阅读 · 0 评论 -
ssm框架学习---mybatis中动态sql中的foreach片段
首先查询对象包含一个集合属性,定义为ids如下:package com.ajin.mybatis.model;import java.util.List;/** * Created by ajin on 16-12-16. */public class StudentVo { private Student student; private List ids;原创 2016-12-19 13:57:27 · 3196 阅读 · 0 评论 -
ssm框架学习---mybatis中动态sql中的sql片段
上面一篇文章中,比如if判断的语句,可以抽取出来组成一个sql片段,方便程序员程序的开发,于是上述的if片段可以定义为如下的sql片段: <!--sql片段 id:sql片段的唯一标识 经验:一般基于单表地定义sql片段,这样可重用性比较高,sql片段中不要包含 where 第一步:定义sql片段 第二步:引用sql片段 -->原创 2016-12-19 13:34:56 · 4603 阅读 · 0 评论 -
ssm框架学习---mybatis和spring的整合
整合主要是将数据源和映射等交给spring来管理,准备工作需要spring和mybatis的整合包,这里采用mybatis的第二种mapper的开发方式mapper接口,映射文件,pojo类和之前的编写一样,这里不再列举首先来看看sqlmapconfig.xml文件<!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3原创 2016-05-14 18:52:05 · 469 阅读 · 0 评论 -
ssm框架学习---springmvc和mybatis整合
1.前端控制器(DispatcherServlet)2.处理器映射器(handlermapping)3.处理器适配器(handlerAdaper)4.视图解析器(ViewerResolver)目录结构如下首先配置前端控制器:在web.xml中配置如下: springmvc org.springframework.web.serv原创 2016-05-14 19:18:46 · 479 阅读 · 0 评论 -
ssm框架学习---mybatis学习文件结构和代码示例
准备工作:mybatis的jar包,数据库的驱动包,日志log4j和单元测试的包开发模式:(1)基于原始dao开发,需要编写dao接口和dao接口的实现类 (2)基于mapper开发,只需编写dao接口,但是需要遵守一定规范(映射文件的命名空间为dao接口全限定名,接口中的方法,参数类型和返回类型和映射文件中statement语句输入参数和输出参数相对原创 2016-05-14 17:45:21 · 3740 阅读 · 0 评论 -
ssm框架学习---mybatis中动态sql中的if片段
1.if判断,比如多个条件查询中,如果某个条件不为空,才将查询内容拼接上去首先还是编写mapper.xml文件如下:<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">原创 2016-12-16 21:37:41 · 6410 阅读 · 2 评论 -
ssm框架学习---mybatis中复杂输入输出的处理
1。处理复杂的输入,也就是普通的一个model对应的类不足以包括所有的比如来自前端传递的数据,这时就需要我们建立一个包装类型来囊括我们的user和其它数据如下所示:package com.ajin.mybatis.model;/** * Created by ajin on 16-12-16. */public class UserVo { private User user原创 2016-12-16 16:13:18 · 525 阅读 · 0 评论 -
ssm框架学习---mybatis中缓存
缓存的目的:将部分数据缓存到内存中,提高系统的性能一级缓存:它是sqlsession级别的,每个sqlsession对象内部都有一个hashmap用来存放查询的数据,mybatis中默认时开启的(1)当执行查询时,首先如果是第一次查询,会从数据库中查询并将结果缓存到一级缓存中,以后再查相同的sql就不再发出sql语句,而是直接从缓存中拿(2)如果在两次相同的查询之间,存在inset原创 2016-12-20 15:02:47 · 4630 阅读 · 0 评论