ibatis映射文件中的<dynamic>节点是作什么用的呀?

 我来答
pieryon
推荐于2016-05-28 · 知道合伙人数码行家
pieryon
知道合伙人数码行家
采纳数:14411 获赞数:166864
获取软件设计师高级职称 万达金融最佳创新奖

向TA提问 私信TA
展开全部
<dynamic>元素划分出SQL语句的动态部分。动态部分可以包含任意多的条件标签元素,条件标签决定是否在语句中包含其中的SQL代码。所有的条件标签元素将根据传给动态查询Statement的参数对象的情况来工作。<dynamic>元素和条件元素都有“prepend”属性,它是动态SQL代码的一部分,在必要情况下,可以被父元素的“prepend”属性覆盖。上面的例子中,prepend属性“where”将覆盖第一个为“真”的条件元素。这对于确保生成正确的SQL语句是有必要的。例如,在第一个为“真”的条件元素中,“AND”是不需要的,事实上,加上它肯定会出错。以下小节讨论不同的条件元素,包括二元条件元素,一元条件元素和其他动态元素。
Storm代理
2023-08-29 广告
"StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,I... 点击进入详情页
本回答由Storm代理提供
cs6641468
推荐于2018-03-02 · TA获得超过5713个赞
知道大有可为答主
回答量:863
采纳率:100%
帮助的人:985万
展开全部
dynamic表示动态的意思。一般在<dynamic-mapped-statement>这个标签内。 如果要用到动态标签(isNotEqaul isEmpty isNotEmpty....)的时候会用到。

<dynamic-mapped-statement name="selectall" resultmap="yourbean">
SELECT * form people
<dynamic>
<isNotEqual prepend=" where" property="param" compareValue="false">
age > 10
</isNotEqual>
</dynamic>
</dynamic-mapped-statement>

上面语句就是查询,如果param的值不为(NotEqual) false,才执行SELECT * form people where age >10 。
如果param值是false,那么就只执行SELECT * form people
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
老唐日常游戏vlog
推荐于2017-11-24 · TA获得超过2103个赞
知道小有建树答主
回答量:1102
采纳率:0%
帮助的人:359万
展开全部
请参考下面的文章 比较全

参考资料: http://chinazzlm.blog.163.com/blog/static/161843537201109101718665/

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式