接口式编程

主要是为了解决再调用MyBatis的SQL时候可能出现的认为失误

1、新建一个接口作为映射文件的说明。映射文件的命名空间就是这个接口的权限定类名。这样就保证了命名空间的唯一性

2、每条映射文件的SQL ID,对应一个接口中的方法。名称一样。参数与返回值类型也与映射文件一致

具体使用

xml

 1     <!--查询-->
 2     <select id="queryMessageList" resultMap="messageResult" parameterType="message">
 3         SELECT <include refid="messageColumns"/> FROM message
 4         <where>
 5             <if test="command != null and !!&quot;&quot;.equals(command.trim())">
 6                 AND command = #{command}
 7             </if>
 8             <if test="description != null and !&quot;&quot;.equals(description.trim())">
 9                 AND description LIKE CONCAT('%', #{description}, '%')
10             </if>
11         </where>
12     </select>

接口

 1 package org.zln.dao;
 2 
 3 import org.zln.domain.Message;
 4 
 5 import java.util.List;
 6 
 7 /**
 8  * Created by sherry on 000008/7/8 19:26.
 9  */
10 public interface IMessage {
11     public List<Message> queryMessageList(Message message);
12 
13 }

调用

1     public List<Message> queryMessageList(String command,String description){
2         Message message = new Message();
3         message.setCommand(command);
4         message.setDescription(description);
5         IMessage iMessage = sqlSessionTemplate.getMapper(IMessage.class);
6         return iMessage.queryMessageList(message);
7     }
原文地址:https://www.cnblogs.com/sherrykid/p/4631165.html