我在mybatis文档和inet中搜索过。但是找不到溶剂。
我的目标是: 从myBatis动态SQL选择return wether
Map <Strinng (Data Base Column), Object (Database Value)> or
List<Object> (Database Values)
而不创建pojo作为数据库表的表示。
应该看起来像:
1)动态SQL:
<select id="selectRecords" parameterType="Entry" resultType="Map">
SELECT
<foreach item="column" index="index" collection="columns" separator=",">
${column}
</foreach>
from ${tableName}
</select>
2)我在动态选择中输入的参数:
public class Entry {
private String tableName;
private String[] columns;
//constructor
//getters, setters
}
3)返回map的方法:
Map<String, Object> selectRecords(Entry entry);
答案 0 :(得分:0)
教程中的第一个示例显示了返回的简单集合的示例。 Here,
<select id="selectPerson" parameterType="int" resultType="hashmap">
SELECT * FROM PERSON WHERE ID = #{id} </select>
这句话是 调用selectPerson,接受int(或Integer)类型的参数,和 返回由映射到行值的列名键控的HashMap。
在此hashmap中,Key-Value对是“ColumnName” - “Column's Value”对。没有使用pojo。您的示例代码对我来说似乎是正确的,如果您有任何错误,可以打印错误。