spring-data-jpa 查询视图
生活随笔
收集整理的這篇文章主要介紹了
spring-data-jpa 查询视图
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019獨角獸企業重金招聘Python工程師標準>>>
spring-data-jpa 查詢視圖,報錯,找不到table或者視圖!花了一天的時間在網上找了一份資料,親測后分享給大家,參見:參考資料。
Controller層
Service層
ObjectDaoService 是共通
ObjectDaoService.java
public?interface?ObjectDaoService?{EntityManager?getEntityManager(); }ObjectDaoServiceImpl.java
@Service public?class?ObjectDaoServiceImpl?implements?ObjectDaoService?{@PersistenceContextprivate?EntityManager?entityManager;@Overridepublic?EntityManager?getEntityManager(){return?this.entityManager;}}業務邏輯層
UserCertificationService
@Service public?interface?UserCertificationService?{public?List<KdOrView>?findKdByNativeSQL();}UserCertificationServiceImpl
? @Service public?class?UserCertificationServiceImpl?implements?UserCertificationService?{@Resourceprivate?ObjectDaoService?objectDaoService;public?List<KdOrView>?findKdByNativeSQL()?{//?1.組織sql語句,這里設置參數?":id"?方式,還有一種是?"?1,?2",需要指定String?sql?=?"select?id,user_name,userid?from?kdorview?k?where?k.id?=?:id";//?2.創建實體管理對象EntityManager?entityManager?=?objectDaoService.getEntityManager();//?3.使用jpa?包裝查詢,獲取query?對象Query?query?=?entityManager.createNativeQuery(sql);//?4.再使用去包裝查詢獲取?nativeQuery?對象SQLQuery?nativeQuery?=?query.unwrap(SQLQuery.class);//?5.設置參數,對應上面的參數?":id"nativeQuery.setParameter("id",?"1");//?設置返回值類型Map,然后對Map進行處理。nativeQuery.setResultTransformer(CriteriaSpecification.ALIAS_TO_ENTITY_MAP);//?6.執行查詢,獲取viewlistList<KdOrView>?viewlist?=?new?ArrayList<KdOrView>();//?解析viewlist,根據功能邏輯封裝@SuppressWarnings("unchecked")List<Map<String,?Object>>?retVal?=?nativeQuery.list();if?(retVal?!=?null?&&?retVal.size()?>?0)?{for?(Map<String,?Object>?map?:?retVal)?{KdOrView?kv?=?new?KdOrView();//?key字段全部要大寫,這里使用的是oracle數據庫kv.setId(map.get("ID").toString());kv.setUser_name(map.get("USER_NAME").toString());kv.setUserid(map.get("USERID").toString());viewlist.add(kv);}}return?viewlist;}Domain
DB View:kdorView ?視圖結構。
備注:
中間因為想把view當做table使用,創建了接口Repository,但是總會報錯找不到表或者視圖。
使用
參考資料:
http://blog.csdn.net/chaijunkun/article/details/8442406
轉載于:https://my.oschina.net/u/263874/blog/540615
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的spring-data-jpa 查询视图的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 多线程“基础篇”11之 生产消费者问题
- 下一篇: 去别人共享目录下拷贝东西,怎么进入别人的