Mybatis配置文件中的經常使用標籤sql
Mybatis中容易混淆的概念編程
1. resultMap和resultType mybatis
2. parameterMap和parameterTypeapp
3. #{}和${}函數
Mybatis的面向接口式編程spa
將配置文件中定義的sql語句映射爲藉口中的某個函數聲明;.net
//普通執行SQL方式:經過sqlSession執行SQL語句 messages = sqlSession.selectList("Message.queryMessageList", message); //面向接口式編程,執行SQL的方式 //動態代理,queryMessageList()並無具體實現,卻能夠調用 IMessage iMessage = sqlSession.getMapper(IMessage.class); messages = iMessage.queryMessageList(message);
Mapper.xml配置教程:http://blog.csdn.net/zhll3377/article/details/8203440代理
<!-- queryMessageList的SQL定義,位於Message.xml文件中 --> <select id="queryMessageList" parameterType="com.mybatis.bean.Message" resultMap="MessageResult"> select ID,COMMAND,DESCRIPTION,CONTENT from MESSAGE where 1=1 <if test="command!=null and !"".equals(command.trim())"> and COMMAND=#{command} </if> <if test="description!=null and !"".equals(description.trim())"> and DESCRIPTION like '%' #{description} '%' </if> </select>
//IMessage接口 /** * 與Message配置文件相對應的接口 * @author Qiang */ public interface IMessage { public List<Message> queryMessageList(Message message); }