1.isNull, isNotNull与isEmpty, isNotEmpty区别
在iBATIS中isNull用于判断参数是否为Null,isNotNull相反
isEmpty判断参数是否为Null或者空,满足其中一个条件则其true
isNotEmpty相反,当参数既不为Null也不为空是其为true
判断之后做相对应的表达式操作
如:id不为空的话拼串a.id=#id:INTEGER#
<isNotNull prepend="AND" property="id">
a.id=#id:INTEGER#
</isNotNull>
=======================附:IBATIS文档注释==================
isNotNull: Checks if a property is null.
isNotNull: Checks if a property is not null.
isNotEmpty: Checks to see if the value of a Collection, String or
String.valueOf()property is not null and not empty (“” or size() < 1).
isEmpty: Checks to see if the value of a Collection, String or
String.valueOf() property is null or empty (“” or size() < 1).
相信看这篇文章的人,可能都是要在sql里面判断一个string是否为"" 从这篇文章就可以很清楚的看到两者的区别。
相关推荐
ELEMENT dynamic (#PCDATA | include | iterate | isParameterPresent | isNotParameterPresent | isEmpty | isNotEmpty | isNotNull | isNull | isNotEqual | isEqual | isGreaterThan | isGreaterEqual | ...
4. `<isNotNull>`:检查属性是否非null。 5. `<isEmpty>`:检查集合、字符串或其转换值是否为空。 6. `<isNotEmpty>`:检查集合、字符串或其转换值是否非空。 ### `<iterate>`标签 `<iterate>`标签用于遍历列表类型...
- 结合 `<isNotNull>`、`<isLessThan>` 等标签,可以根据 Map 中的数据动态生成 SQL 语句。 2. **示例代码**: ```xml select id, note from Product <!-- isPropertyAvailable 判断属性是否有效 --> ...
3. **一元标签**:用于判断某个属性的存在与否,如 `<isNotNull>`、`<isEmpty>` 等。 4. **`<iterate>`**:用于循环迭代一个集合中的元素。 #### 三、`<dynamic>` 标签详解 `<dynamic>` 标签是最常用的动态 SQL ...
- `<isNotNull>`:检查某个属性是否不为null。 - `<isEmpty>`:检查某个属性是否为空,对于集合来说是其大小是否为0,对于字符串来说是其长度是否为0或是否为null。 - `<isNotEmpty>`:检查某个属性是否非空,对于...
`<isNotNull>`和`<isNotEmpty>`则分别用于判断参数是否非空和字符串是否非空,进而决定是否加入相应的过滤条件。 ### 安全高效:IBATIS与JDBC对比 IBATIS(MyBatis)相较于传统的JDBC,有以下优势: 1. **安全性*...