Mybatis
heqianqiann
每一个不曾起舞的日子都是对生命的辜负
展开
-
Mybatis 出现Mapped Statements collection does not contain value for xxx
mapper.xml中没有加入namespace mapper.xml中的方法和接口mapper的方法不对应 mapper.xml没有加入到mybatis-config.xml中(即总的配置文件) 配置了mapper文件的包路径的除外 mapper.xml文件名和所写的mapper名称不相同。原创 2017-04-28 13:02:19 · 1188 阅读 · 0 评论 -
Mybatis 解决字段名与实体类属性名不相同的冲突
1.通过在查询的sql语句中定义字段名的别名,让字段名的别名和实体类的属性名一致这种方式是通过在sql语句中定义别名来解决字段名和属性名的映射关系的。2.通过<resultMap>来映射字段名和实体类属性名的一一对应关系。这种方式是使用MyBatis提供的解决方式来解决字段名和属性名的映射关系的。package com.hqq.entity;/** * Order * 定义orders表对应的实原创 2017-04-28 13:08:07 · 1025 阅读 · 1 评论 -
Mybatis Generator最完整配置详解
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN""http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">转载 2017-04-28 17:00:39 · 870 阅读 · 0 评论 -
Mybatis 配置出现元素类型为 "configuration" 的内容必须匹配 "(properties?,settings?,typeAliases?,typeHandlers?,objectF
Caused by: org.apache.ibatis.builder.BuilderException: Error creating document instance. Cause: org.xml.sax.SAXParseException; lineNumber: 50; columnNumber: 17; 元素类型为 “configuration” 的内容必须匹配 “(propert原创 2017-04-29 10:45:43 · 3350 阅读 · 0 评论 -
Mybatis 一级缓存和二级缓存
一级缓存[SqlSession级别]基本原理一级缓存是SqlSession级别的缓存。在操作数据库时需要构造 sqlSession对象,在对象中有一个(内存区域)数据结构(HashMap)用于存储缓存数据。不同的sqlSession之间的缓存数据区域(HashMap)是互相不影响的。Mybatis**默认开启一级缓存**组织原则MyBatis只是一个MyBatis对外的接口,SqlSess原创 2017-04-29 11:25:58 · 1148 阅读 · 0 评论 -
Mybatis 主键配置
1. 主键回调插入数据时 如果数据库设置了自增长的话 那么无需设置主键会自动由数据库生成 我们插入的时候可以进行配置 使得插入的时候将插入成功生成的主键自动设置到实体类中例子实体类User:package com.hqq.entity;import java.io.Serializable;/** * User * Created by heqianqian on 2017/4/27. */原创 2017-08-16 15:10:28 · 2688 阅读 · 0 评论 -
Mybatis 获取不到接口参数问题
问题描述:持久层使用Dao接口+实现类,在实现类里通过sqlSession调用selectXXX方法获取数据的时候未报错但是取到的数据一直为空后面经过测试发现原因是mapper映射文件中的sql语句无法获取参数,之前使用的是#{参数名}无效,想到在参数上添加注解@Param(参数名)无效,换成#{占位符}依然无效。最后发现原因是因为使用了接口的实现类,mybatis就无法获取属性了[具体原因还不清楚原创 2017-08-24 23:45:17 · 5841 阅读 · 0 评论 -
Mybatis 判断Integer为空小问题
一般判断字符串为空时 使用的是和null以及空字符串”进行判断if test="str!=null and str!=''"> ...if>对于Integer等数值类型if test="num!=null"> ...if>只需要和空进行判断即可 之前和空字符串也比较了,但是常理来说,0并不等于空字符串,因此等式应该也是成立的,然而在Mybatis里Integ原创 2018-01-10 10:06:10 · 3650 阅读 · 0 评论