mybatis query多級List級聯類 之collection標籤使用《示例》上
需求:查詢時需要對比stationStatsInfo 充電裝置,介面資訊的基本資訊的最後修改時間,三者只要有一處修改,就認為是最新修改時間,然後與輸入引數lastQueryTime進行對比,最後符合條件的站資訊資料全部顯示。
sql:比較lastQueryTime PK updateTime
<select id="query_Stations_info" parameterType="java.util.Map" resultMap="StationInfoMap" >
SELECT a.GRID_STATION_SEQ,a.GRID_STATION_NAME,a.AREACODE,a.ADDRESS,a.CONTACT_MOBILE,a.station_type,
FROM
${projectSchema}.grid_station a where
UNIX_TIMESTAMP(a.UPDATED_TIME)>UNIX_TIMESTAMP(#{LastQueryTime,jdbcType=VARCHAR})
or ( EXISTS ( select 1 from ${projectSchema}.carport_info b LEFT JOIN ${projectSchema}.grid_stake c ON b.GRID_STAKE_SEQ = c.GRID_STAKE_SEQ where b.GRID_STATION_SEQ = a.GRID_STATION_SEQ and (UNIX_TIMESTAMP(b.UPDATED_TIME)>UNIX_TIMESTAMP(#{LastQueryTime,jdbcType=VARCHAR})
orUNIX_TIMESTAMP(c.UPDATED_TIME)>UNIX_TIMESTAMP(#{LastQueryTime,jdbcType=VARCHAR})) ) )
javaBean-------------------------------------------------------------
第一級:stationStatsInfo.java
第二級:EquipementStatsInfo.java
第三極:ConnectStatsInfo.java
mapper=-------------------------------------------------------------
<resultMap id="StatsResultMap" type="com.extracme.evshare.business.tfriftbean.StationStatsInfo">
<result column="Station_Id" jdbcType="VARCHAR" property="StationID" />
<result column="Station_Electricity" jdbcType="DOUBLE" property="StationElectricity" />
<result column="Start_Time" jdbcType="TIMESTAMP" property="StartTime" />
<result column="End_Time" jdbcType="TIMESTAMP" property="EndTime" />
<collection property="EquipmentStatsInfos" javaType="ArrayList" select="com.extracme.evshare.business.tserver.mapper.EquipmentStatsMapper.queryEquipmentStatsInfoByStatsId"
column="{StationStatsId=stationStatsId}" ofType="com.extracme.evshare.business.entity.EquipmentStatsInfo">
</collection>
</resultMap>
<!-- 此查詢用於定期獲取充電站,在某個週期內的統計資訊 -->
<select id="queryStationStats" parameterType="java.util.Map" resultMap="StatsResultMap">
select
Station_Stats_Id stationStatsId ,Station_Id, Station_Electricity, Start_Time, End_Time
from station_stats
where 1=1
<if test="stationId != null and stationId !='' " >
and Station_Id = #{stationId,jdbcType=VARCHAR}
</if>
<if test="startTime != null and startTime !='' " >
and Start_Time = #{startTime,jdbcType=TIMESTAMP}
</if>
<if test="endTime != null and endTime !='' " >
and End_Time = #{endTime,jdbcType=TIMESTAMP}
</if>
ORDER BY End_Time
</select>
<resultMap id="EquipmentResultMap" type="com.extracme.evshare.business.tfriftbean.EquipmentStatsInfo">
<!-- <id column="Equipment_Stats_Id" jdbcType="BIGINT" property="EquipmentStatsId" /> -->
<result column="Equipment_Id" jdbcType="VARCHAR" property="EquipmentID" />
<result column="Equipment_Electricity" jdbcType="DOUBLE" property="EquipmentElectricity" />
<!-- <collection property="ConnectorStatsInfos" resultMap="ConnectorResultMap" /> -->
<collection property="ConnectorStatsInfos" javaType="ArrayList" select="com.extracme.evshare.business.tserver.mapper.ConnectorStatsMapper.queryStatsInfoById"
column="{EquipmentStatsId=equipmentStatsId}" ofType="com.extracme.evshare.business.tfriftbean.ConnectorStatsInfo">
</collection>
</resultMap>
<!-- 此查詢用於定期獲取充電站下,在某個週期內的裝置介面統計資訊 -->
<select id="queryEquipmentStatsInfoByStatsId" parameterType="java.util.Map" resultMap="EquipmentResultMap">
select
e.Equipment_Stats_Id as equipmentStatsId,
e.Equipment_Id EquipmentID,
e.Equipment_Electricity
<!-- ,c.Connector_Id ConnectorID,
c.Connector_Electricity -->
from
equipment_stats e
<!-- LEFT JOIN connector_stats c ON e.Equipment_Stats_Id = c.Equipment_Stats_Id -->
where e.Station_Stats_Id = #{StationStatsId,jdbcType=INTEGER}
</select>
---------------------分級依次查詢List--------------------------
相關推薦
mybatis query多級List級聯類 之collection標籤使用《示例》上
需求:查詢時需要對比stationStatsInfo 充電裝置,介面資訊的基本資訊的最後修改時間,三者只要有一處修改,就認為是最新修改時間,然後與輸入引數lastQueryTime進行對比,最後符合條
【MyBatis】-----【MyBatis】--CURD---表級聯系【一對一】
去除 style print alt 得到 tag ack clas return 一、核心配置文件 1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE configuration PU
mybatis之級聯關系(一對一、一對多)
res cit tar country 參考 ace ctype ride turn 1. 一對一關系 1.1 entiry 1.1.1 TPersonInfo.java package com.blueStarWei.entity; pub
JAVAWEB開發之Hibernate詳解(二)——Hibernate的持久化類狀態與轉換、以及一級快取詳解、關聯關係的對映(一對多、多對多、級聯)
package cn.test.hibernate3.demo2; import org.hibernate.Session; import org.hibernate.Transaction; import org.junit.Test; import cn.test.hibernate3.demo2.
【MyBatis】-----【MyBatis】---表級聯系【一對多】
new pda 聯合 測試 asr exc ack 負責 trace 一、核心配置文件 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//myba
mybatis級聯查詢,分步查詢和延遲加載
enabled 4.2 res 標簽 mapper last pac mes 方式 級聯查詢: 1.Employee表: id;lastName;email; gender;d_id(外鍵關聯Department的ID) 2.Department表: id;deptNa
Mybatis級聯查詢
username tac 實現 數據 配置 級聯查詢 builder java 3.0 轉自:http://blog.csdn.net/yulei_qq/article/details/22039815 工程的目錄結構: 有兩個表,一個文章表article ,一個用戶表u
JavaScript高級程序設計之引用類型(上)
5-0 歸並 高級 new es5 順序 回調函數 比較 並且 引用類型是比較復雜的一種類型。在面向對象的編程中,會經常用到引用類型,可以說它是編程語言的核心。在JS中內置了幾種引用類型,下邊會進行一一的介紹。 內置引用類型 Object類型 1、聲明方式:直接使用new操
Python學習之day02---學習建立三級級聯選單
1、要求使用"key-value"字典,建立一個三級級聯選單,每個選單下面包含相應的子選單:例如:map ={ '山東省':{"濟南":{"高新區":["科技園","會展中心"]}}} 2、要求可以逐級選單進行返回上級選單。 # 一、定義選單內容 map_list =
POI問題總結,關於數字級聯及多級級聯(三級以上)
目錄 最近公司業務需要用到excel,並且要匯出模板,今天為止所有的功能都已經實現了,在這裡對出現的一些問題做一個總結。 效果圖: 這是一個五級聯動的資料,其中第一列是數字開頭,實現了五級
hibernate 級聯刪除時候的兩種情況 之(二) 刪除從表,無法刪除關係表
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
級聯下拉類表(二級)
<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8" /> <meta name="viewport
Hibernate Validator 6.0.7.Final 之一(宣告Bean約束之級聯約束)
前幾篇文章講的校驗都是針對簡單屬性,那麼,如果一個bean的屬性是一個複雜物件呢,我們該怎麼校驗,其實也簡單,只需要在這個屬性上使用@Valid註解就可以了。 Person的定義 public class Person { @NotNull(message
Hibernate Validator 6.0.7.Final 之三(方法約束之級聯約束)
和bean屬性約束之級聯約束一樣,方法約束也支援級聯約束。直接看例子: Car定義 public class Car { @NotNull private String manufacturer; @NotNull @Size(min
學會MyBatis中的級聯
一、概述 MyBatis中的級聯分為三種 鑑別器(discriminator): 根據一些條件決定實現類級聯的方案。比如體檢表需要根據性別區分。 一對一(association): 比如學生與學生證就是一對一的關係。 一對多(collection): 比如班級
javaEE Mybatis,Mybatis與Spring整合之傳統Dao開發(不推薦)。SqlSessionDaoSupport(Mybatis提供的Dao層基類)
src/applicationContext.xml(Spring核心配置檔案): <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.or
MyBatis級聯多個物件屬性賦值
一個客戶有多個訂單, 一個訂單對應一個客戶 需求:查詢一個使用者,得到對應的使用者及相關訂單 兩個實體類 package com.itlike.domain; import lombok.Getter; import lombok.Setter; imp
MyBatis級聯一個物件屬性賦值
兩個pojo類如下: package com.itlike.domain; import lombok.Getter; import lombok.Setter; import lombok.ToString; @[email protected]@ToString pub
【機器學習】傳統目標檢測演算法之級聯分類器Cascade
先附上參考文章吧。 文章其實是“P. Viola, M. Jones. Rapid Object Detection using a Boosted Cascade of Simple Features[J].CVPR, 2001”的學習筆記,下面第二個連結是文獻的中英文版
MyBatis的級聯查詢(兩種方式)
https://blog.csdn.net/zhupengqq/article/details/78575767 與上次唯一不同的一下幾個類 Department.java package com.cn.zhu.bean; public class Department