求大神解惑:ibatis中查询时传入一个类作参数,是怎么获取它的属性值的
事件:在用ibatis做项目的时候,发现了一个问题。
代码示例
A a = new A();
return getSqlMapClientTemplate().queryForList("***.***", a, startRow, rowCount)
其中A是一个参数类
假设他有三个属性b、c、d、都有get\set 方法,有一个属性e,只有getE()方法,返回一个类F, 但在A中并没有E这个属性
F中有属性sortField sortType
那么当我在ibatis中使用的时候如下,
<select id="***" resultMap="" parameterClass="A">
<dynamic prepend="order by">
<isNotEmpty property="E">
<iterate property="E" conjunction="," close="" open="">
$E.sortField$
$E.sortType$
</iterate>
</isNotEmpty>
</dynamic>
</select>
疑问:iabtis是通过什么找到的E这个属性,我有个猜想,ibatis找参数的属性值,都是通过get方法寻找的,无论类中有无这个属性。
求大神给我讲解一下,想了解的深一点,帮我讲讲它的原理。。