jpa實(shí)現(xiàn)只查詢指定的字段
jpa查詢指定的字段
JpaRepository中new的方式產(chǎn)生新的對(duì)象,并配置好其構(gòu)造函數(shù)
JPA對(duì)字段命名有一點(diǎn)規(guī)則,推薦使用駝峰式命名,如果下面的方法會(huì)報(bào)錯(cuò),并且沒(méi)有明確的報(bào)錯(cuò)信息,請(qǐng)先看字段是否合法?。。。。?/p>
下面是實(shí)例代碼
JpaRepository:
@Transactional public interface PayeeDataRepo extends JpaRepository<PayeeData, String> { @Query("select new com.stylefeng.guns.workday.bean.PayeeData(p.id,p.name,p.bankAccountNumberEncode,p.adhocPayeeID,p.isDomestic,p.bankAccountName ) from PayeeData p") List<PayeeData> finddAllNoBankNumber(); }
PayeeData Bean:
public class PayeeData implements Serializable { public PayeeData() { } public PayeeData(String id, String name, String bankAccountNumberEncode, String adhocPayeeID, Integer isDomestic, String bankAccountName) { this.id = id; this.name = name; this.bankAccountNumberEncode = bankAccountNumberEncode; this.adhocPayeeID = adhocPayeeID; this.isDomestic = isDomestic; this.bankAccountName = bankAccountName; } }
spring data jpa查詢自定義查詢字段
@Query(value = "SELECT a.city city,sum(m.page_view) view from t_ques m " + "LEFT JOIN attractions a on m.spot_name=a.name where m.ques_time<= ?1 and a.province_code=?2 GROUP BY a.city ORDER BY view desc", nativeQuery = true) List<Map<String, Object>> getHotCity(Date date, String pcode);
List<Map<String, Object>> cityHotBOList = quesRepository.getHotCity(dataDate, pcode); if(null == cityHotBOList || cityHotBOList.size() <= 0){ return null; } for(int i = 0; i< top && i<cityHotBOList.size();i++){ Map<String, Object> cityHotBO = cityHotBOList.get(i); HotCityResVO hotCityResVO = new HotCityResVO(); hotCityResVO.setName((String)cityHotBO.get("city")); List<Attractions> attractionsList = attractionsRepository.findByCity((String)cityHotBO.get("city")); hotCityResVO.setCode(attractionsList.get(0).getCityCode()); hotCityResVO.setNum((BigDecimal)cityHotBO.get("view")); hotCityResVOList.add(hotCityResVO); }
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Mybatis如何通過(guò)接口實(shí)現(xiàn)sql執(zhí)行原理解析
為了簡(jiǎn)化MyBatis的使用,MyBatis提供了接口方式自動(dòng)化生成調(diào)用過(guò)程,可以大大簡(jiǎn)化MyBatis的開(kāi)發(fā),下面這篇文章主要給大家介紹了關(guān)于Mybatis如何通過(guò)接口實(shí)現(xiàn)sql執(zhí)行原理解析的相關(guān)資料,需要的朋友可以參考下2023-01-01java多線程編程之慎重使用volatile關(guān)鍵字
volatile關(guān)鍵字相信了解Java多線程的讀者都很清楚它的作用。volatile關(guān)鍵字用于聲明簡(jiǎn)單類型變量,下面看一下為什么要慎重使用volatile關(guān)鍵字2014-01-01MyBatis CodeHelperPro激活方法詳細(xì)教程
MyBatisCodeHelper-Pro是IDEA下的一個(gè)插件,功能類似mybatis plugin,今天小編給大家分享MyBatis CodeHelperPro激活方法,需要的朋友跟隨小編一起看看吧2021-07-07vue數(shù)據(jù)響應(yīng)式原理重寫函數(shù)實(shí)現(xiàn)數(shù)組響應(yīng)式監(jiān)聽(tīng)
Vue的通過(guò)數(shù)據(jù)劫持的方式實(shí)現(xiàn)數(shù)據(jù)的雙向綁定,即使用Object.defineProperty()來(lái)實(shí)現(xiàn)對(duì)屬性的劫持,但是Object.defineProperty()中的setter是無(wú)法直接實(shí)現(xiàn)數(shù)組中值的改變的劫持行為的,需要的朋友可以參考下2023-05-05SpringBoot實(shí)現(xiàn)全局異常的封裝和統(tǒng)一處理
在Spring Boot應(yīng)用中,全局異常的處理是一個(gè)非常重要的方面,本文主要為大家詳細(xì)介紹了如何在Spring Boot中進(jìn)行全局異常的封裝和統(tǒng)一處理,需要的可以參考下2023-12-12SpringBoot實(shí)現(xiàn)任意位置獲取HttpServletRequest對(duì)象
這篇文章主要介紹了SpringBoot實(shí)現(xiàn)任意位置獲取HttpServletRequest對(duì)象,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11