課程
/后端開發
/Java
/通過自動回復機器人學Mybatis---基礎版
為什么我的配置完一對多關系映射之后,只能輸出一條結果。
2016-05-21
源自:通過自動回復機器人學Mybatis---基礎版 5-3
正在回答
我的錯誤是前面這樣的:jog4j顯示有多條數據,頁面回復顯示總是那一條數據。后來發現那個別名真的要有,當初想著有可能不影響,然后發現不行,a.id給個別名就行了
不知道是不是和我一樣?我是因為cammand_content表中command_id字段的3個值都是不同的,后來改成相同的就可以隨機查出數據
要進行分組?
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
? ? PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
? ? "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="Command">
? <resultMap type="com.imooc.bean.Command" id="Command">
? ? <id column="id" jdbcType="INTEGER" property="id"/>
? ? <result column="command" jdbcType="VARCHAR" property="command"/>
? ? <result column="DESCRIPTION" jdbcType="VARCHAR" property="description"/>
?? ?
? ? <!-- resultMap 夸文件引用需要標明夸文件的? namespace="CommandContent" -->
? ? <!-- 在主表中關聯字表? 在一個entity中包含另一個 entity -->
? ? <collection property="content"? resultMap="CommandContent.Content"/>
? </resultMap>
??
? <select id="queryCommandList" parameterType="com.imooc.bean.Command" resultMap="Command">
? <!-- 對應查詢結果的字段來匹配 而不是數據庫中的字段名
? a.id 與 b.id? 查詢出結果后 id字段不會帶前綴?
? 那么結果集 中會有兩個id字段
? 如果給字段增加別名,那么getInt()? 中則要寫別名
?? -->
? ? select a.ID as name, a.command, a.DESCRIPTION, b.ID, b.CONTENT, b.COMMAND_ID
? ? from COMMAND a left join COMMAND_CONTENT b
? ? on a.ID=b.COMMAND_ID
? ? <where>
? ? <if test="command != null and !"".equals(command.trim())">
? ? and a.command=#{command}
? ? </if>
? ? <if test="description != null and !"".equals(description.trim())">
? ? and a.DESCRIPTION like '%' #{description} '%'
? ? </where>
? </select>
</mapper>
舉報
微信公眾號自動回復功能學習Mybatis,基礎教程加案例實戰方式學習
4 回答加入mybatis操作后輸入查詢條件查詢不出結果,之前不使用可以根據條件查詢出結果
1 回答Mybatis的 關聯映射
4 回答沒有條件查詢,正常,按條件查詢時,查詢不出結果,log日志中的sql正確,在數據庫中執行可以查詢到結果
1 回答調用查詢方法的時候,為什么傳入null值能進行查詢?
2 回答學習mybatis時,關鍵字查詢數據中的記錄時,關查詢中文沒有結果,查詢英文有結果
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2018-10-10
我的錯誤是前面這樣的:jog4j顯示有多條數據,頁面回復顯示總是那一條數據。后來發現那個別名真的要有,當初想著有可能不影響,然后發現不行,a.id給個別名就行了
2017-03-29
不知道是不是和我一樣?我是因為cammand_content表中command_id字段的3個值都是不同的,后來改成相同的就可以隨機查出數據
2016-05-22
要進行分組?
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
? ? PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
? ? "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="Command">
? <resultMap type="com.imooc.bean.Command" id="Command">
? ? <id column="id" jdbcType="INTEGER" property="id"/>
? ? <result column="command" jdbcType="VARCHAR" property="command"/>
? ? <result column="DESCRIPTION" jdbcType="VARCHAR" property="description"/>
?? ?
? ? <!-- resultMap 夸文件引用需要標明夸文件的? namespace="CommandContent" -->
? ? <!-- 在主表中關聯字表? 在一個entity中包含另一個 entity -->
? ? <collection property="content"? resultMap="CommandContent.Content"/>
? </resultMap>
??
? <select id="queryCommandList" parameterType="com.imooc.bean.Command" resultMap="Command">
? <!-- 對應查詢結果的字段來匹配 而不是數據庫中的字段名
? a.id 與 b.id? 查詢出結果后 id字段不會帶前綴?
? 那么結果集 中會有兩個id字段
??
? 如果給字段增加別名,那么getInt()? 中則要寫別名
??
?? -->
? ? select a.ID as name, a.command, a.DESCRIPTION, b.ID, b.CONTENT, b.COMMAND_ID
? ? from COMMAND a left join COMMAND_CONTENT b
? ? on a.ID=b.COMMAND_ID
? ? <where>
? ? <if test="command != null and !"".equals(command.trim())">
? ? and a.command=#{command}
? ? </if>
? ? <if test="description != null and !"".equals(description.trim())">
? ? and a.DESCRIPTION like '%' #{description} '%'
? ? </if>
? ? </where>
? </select>
</mapper>