<?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="com.sofency.ssm.mapper.FameCustomMapper">
<!-- 查詢榮譽串列和榮譽獲取者的姓名 -->
<!-- <cache type="org.mybatis.caches.ehcache.EhcacheCache"/> -->
<resultMap id="BaseResultMap" type="com.sofency.ssm.pojo.Fame">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
This element was generated on Mon Mar 30 20:44:51 CST 2020.
-->
<id column="fame_id" jdbcType="INTEGER" property="fameId" />
<result column="fame_level" jdbcType="INTEGER" property="fameLevel" />
<result column="fame_name" jdbcType="VARCHAR" property="fameName" />
<result column="fame_description" jdbcType="VARCHAR" property="fameDescription" />
</resultMap>
<resultMap id="fameCustomDemo" type="com.sofency.ssm.pojo.FameCustom" extends="BaseResultMap">
<result property="engineerId" column="engineer_id" jdbcType="INTEGER"/>
<result property="engineerName" column="engineer_name" jdbcType="VARCHAR"/>
<result property="getTime" column="get_time" jdbcType="TIMESTAMP" />
</resultMap>
<select id="getFameInfoList" resultMap="fameCustomDemo">
select fame.fame_id,fame.fame_name,fame.fame_level,engineer_name,getfame.get_time,getfame.engineer_id
from fame
join getfame on fame.fame_id=getfame.fame_id
join engineer on getfame.engineer_id =engineer.engineer_id
</select>
<select id="getFameInfo" parameterType="com.sofency.ssm.pojo.FameCustom" resultMap="fameCustomDemo">
select fame.fame_id,fame.fame_name,
fame.fame_level,engineer_name,
getfame.get_time,getfame.engineer_id
from engineer join getfame on engineer.engineer_id=getfame.engineer_id
and getfame.engineer_id=#{engineerId}
join fame on getfame.fame_id=fame.fame_id
and getfame.fame_id=#{fameId}
</select>
</mapper>
uj5u.com熱心網友回復:
你可以把sql拿出來到資料庫中執行看看結果,第一個沒有條件只是做內連的話,回傳的是兩個表根據on條件的交集,第二個sql不僅做了內連,而且內連的on條件包含了你寫的兩個條件,id相等及and條件,連接的時候如果想先得到交集再進行條件過濾的話,就在所有的連接最后加where陳述句,如果是在連接的時候增加條件的話,就用and。uj5u.com熱心網友回復:
sql陳述句在程式跑的時候,mybatis的日志列印了執行的sql,但是service拿資料時卻拋出例外,按理說這種情況應該是資料庫欄位沒有映射到pojo的欄位 ,但是反復檢查好幾遍,都在對應著 這就很尷尬了
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/103203.html
標籤:Java EE
