mybatis 不封装对象获取数据库值的解决方案 思路:如果我们不想封装对象,使用 map 来获得 sql 查询的结果集是一个理想的方案。下面就是一个实现类示例。 list map string , string listmap = ( list map string , string ) this.getsqlmapclienttemplate().
mybatis 不封装对象获取数据库值的解决方案
思路:如果我们不想封装对象,使用 map 来获得 sql 查询的结果集是一个理想的方案。下面就是一个实现类示例。
listmapstring, string>> listmap = (listmapstring, string>>) this.getsqlmapclienttemplate().queryforlist(writingessay.queryassignmenterrorandreminderbyassid, assignment_id);string context = getessaycontextbyjson(listmap.get(0).get(assignment_history_content), listmap.get(0).get(essay_set_format));
我们再来看看底层的 sql 语句。
select a.assignment_history_content as assignment_history_content, c.essay_set_format as essay_set_format, d.essay_reminder as essay_reminder from t_assignment_content a, t_assignment b, t_essay_set c, t_essay d where b.assignment_history_id = a.assignment_history_id and b.assignment_id = $assignment_id$ and b.essay_id = d.essay_id and d.essay_set_id = c.essay_set_id;
查询数据库得到的结果集。
分析:因为我们明确地知道结果集返回一条数据。
下面的知识点和本小节无关。
if (stringutils.isnotempty(reminder)) { for (string str : reminder.split(#)) { int flag = context.indexof(str); if (flag == -1) { mapreminder.put(str, false); } else { mapreminder.put(str, true); } } }