废话不多说 ,直接上图!
select元素有很多属性(这里说用的比较多的):
id:命名空间唯一标识,可以被用来引用这条语句
parameterType:将会传入这条语句的参数类的完全限定名或者别名
resultType:从这条语句要返回的期望类型的类的完全限定名或别名(这里注意下集合类型,应该是集合可以包含的类型,不能是集合本身),重要:使用resultType或resultMap,但不能同时使用。
resultMap:命名引用外部的resultMap,其名称要和外部的resultMap元素的ID名称一致,用于映射其结果到实体类指定对象中。
Mybatis映射文件<!CDATA[[]]> 转义问题
"<" 会产生错误,因为解析器会把该字符解释为新元素的开始。
"&" 也会产生错误,因为解析器会把该字符解释为字符实体的开始。
某些文本,比如 JavaScript 代码,包含大量 "<" 或 "&" 字符。为了避免错误,可以将脚本代码定义为 CDATA。
CDATA 部分中的所有内容都会被解析器忽略。
CDATA 部分由 "<![CDATA[" 开始,由 "]]>" 结束:
<![CDATA[AND bill_date <= DATE_FORMAT(NOW(), '%Y-%m-%d')]]>
在xml文件中<,>,& ,", '不能直接存储,必须转移为实体,如"<", “>”才能被保存进xml文档,
<!CDATA[[]]>的意思是遇到 <= ,>=这些运算符按照原文本写入
and om.create_time &It; = data_sub(DATA_FOTMAT(#{endTime}),"yyyy-mm-dd",interval -1 day)
<![CDATA[AND om.craete_time <=sub(DATA_FOTMAT(#{endTime}),"yyyy-mm-dd",interval -1 day)]]
BigDecimal加减乘除计算
首先是bigdecimal的初始化
这里对比了两种形式,第一种直接value写数字的值,第二种用string来表示
加法 add()函数 减法subtract()函数
乘法multiply()函数 除法divide()函数 绝对值abs()函数