<!-- 此处使用if比较是否相等 --> 范例一: <select id="findClientIds" parameterType="map" resultType="map"> SELECT sys_user.id,sys_user.clientId FROM sys_user <where> <if test="grade!= null and grade!= ''and grade =…
mybatis中的where标签可以去除 开头的 and 或者 or 但是放在后面的不行 失败的: <select id="countNotesByParam" parameterType="map" resultType="int"> select count(*) from cn_note <where> <if test="userId !=null"> cn_user_id= #{u…
主键回填其实是一个非常常见的需求,特别是在数据添加的过程中,我们经常需要添加完数据之后,需要获取刚刚添加的数据 id,无论是 Jdbc 还是各种各样的数据库框架都对此提供了相关的支持,本文我就来和和大家分享下数据库主键回填在 MyBatis 中的两种实现思路. 原生写法 框架来源于我们学过的基础知识,主键回填实际上是一个在 JDBC 中就被支持的写法,有的小伙伴可能不知道这一点,因此这里我先来说说在 JDBC 中如何实现主键回填. JDBC 中实现主键回填其实非常容易,主要是在构造 Prepar…
主要有两个配置文件,一个是主配置文件SqlConfig.xml, 还有一个是dao接口实现类相对应的mapper的配置文件 .比如userDao的userDao.xml配置文件. 1.resultType 标签 用在userDao.xml 中,用在增删改查标签中,用于指定结果的返回类型,比如说下面这样. 2.resultMap标签 用在userDao.xml中,这个标签可以用来解决数据库字段和实体字段名称不匹配的问题,相当于是对我们配置的数据库表的字段起别名.用来和我们实体字段匹配,一个对一个的…
在C++中,两个字符串比较的代码可以为: (string1==string2) 但在java中,这个代码即使在两个字符串完全相同的情况下也会返回false Java中必须使用string1.equals(string2)来进行判断  eg: string s1="Hello"; string s2="Hello"; 则(s1==s2)=true; 因为他们指向的同一个对象.  eg: String s1=new String("Hello"); …
标签说明 在 MyBatis 的 sql 映射配置文件中,需要使用 paramterType.resultType 来设置 sql 语句的输入输出参数,一般参数都是基本的数据类型或封装类型,但都需要声明该类型的全路径,java.lang.String,或者 cn.com.mybatis.pojo.Student, 这时就可以通过 typeAliases 别名来设置,简化复杂度 标签示例 例如之前介绍的模糊查询示例,当不使用别名,而使用全路径时,配置示例代码如下: <select id="f…
文件介绍 对于 MyBatis 最核心的全局配置文件是 sqlmapConfig.xml 文件,其中包含了数据库的连接配置信息.Mapper 映射文件的加载路径.全局参数.类型别名等. 配置项详解 标签名称 标签作用 configuration 包裹所有配置标签,是整个配置文件的顶级标签. properties 属性,该标签可以引入外部配置的属性,也可以自己配置.该配置标签所在的同一个配置文件中的其他配置均可引用此配置中的属性. setting 全局配置参数,用来配置一些改变运行时行为的信息,例…
一. 没用sql标签前的SQL映射代码: <select id="findById" resultType="cn.tedu.mybatis.entity.User"> SELECT id,username,password,age,phone,email FROM t_user WHERE id=#{id} </select> 使用sql标签就可以重用sql标签里面的SQL语句, 只要调用<include>标签就可以了,refi…
术语 CDATA 指的是不应由 XML 解析器进行解析的文本数据(Unparsed Character Data). 在 XML 元素中,"<" 和 "&" 是非法的. "<" 会产生错误,因为解析器会把该字符解释为新元素的开始. "&" 也会产生错误,因为解析器会把该字符解释为字符实体的开始. 某些文本,比如 JavaScript 代码,包含大量 "<" 或 "…
问题产生? 今天在做Excel导出的时候,有个判断一个状态的字段,我的这个字段是int类型的,还有两个时间类型,我在判断的时候给的是Long类型的. 在测试的时候发现,不管怎么样都不执行if条件里面的内容,代码如下: <select id="selectBusinessByHoutaiShenhe" resultMap="BaseResultMap" > select <include refid="Base_Column_List&qu…