mybatis添加自定义sql语句

编程

我一般使用mybatis-plus,但是在维护旧代码的时候发现使用的是xml这样的mybatis, 需要使用动态的sql语句,所以要自定义sql语句

1.xml里面设置,resultMap是自己定义的类对象,也可以使用map

<select id="selectQuestionForDownload" resultMap="getKnowledgeQuestionMap" parameterType="java.lang.String">

${_parameter}

</select>

2.mapper设置, 直接声明该接口即可

List<KnowledgeQuestion> selectQuestionForDownload(String sql);

3.调用的地方,自动驻入就不说明了,直接看调用的地方

StringBuilder builder = new StringBuilder();

String start = "select * from question_gray where ";

builder.append(start);

for(String str : params.keySet()){

if(Constants.QUESTION_PARAMS.containsKey(str)){

builder.append(Constants.QUESTION_PARAMS.get(str)).append("=").append(params.get(str)).append(" and ");

}

}

builder.delete(builder.length()-5,builder.length());//去掉最后一个and

question = questionMapper.selectQuestionForDownload(builder.toString());

这就是mybatis使用自定义sql语句,写的粗糙,见谅。

以上是 mybatis添加自定义sql语句 的全部内容, 来源链接: utcz.com/z/514619.html

回到顶部