0
我有一個非常簡單的查詢來選擇表中的所有行。在冬眠期間,它總是需要17-18秒。我指定show_sql
爲真。我複製SQL命令直接到MySQL,並花了0.00022秒...SQL查詢非常緩慢的休眠,在mysql上很快
這是查詢:
SELECT
organizati0_.id AS id1_5_,
organizati0_.adminList AS adminLis2_5_,
organizati0_.demoAccount AS demoAcco3_5_,
organizati0_.disabled AS disabled4_5_,
organizati0_.enduserCredits AS enduserC5_5_,
organizati0_.name AS name6_5_,
organizati0_.pushNotificationRoom AS pushNoti7_5_,
organizati0_.totalLicenses AS totalLic8_5_,
organizati0_.usedLicenses AS usedLice9_5_
FROM
organization organizati0_
這是查詢代碼:
Session session = ThreadSessionHolder.getThreadSession();
Query query = session.createQuery("from Organization ");
List list = query.list();
return list;
什麼想法?這是驅使我堅果
它更可能是來自服務器的數據檢索和創建Java時不應該做的對象,在這裏有毛病。請注意,您正在拉動整個表格 – e4c5
組織實體上是否有任何關聯?難道是他們中的一些人渴望?記錄數量是多少? –
如果您在MySql上進行查詢總是會很快,那麼當您要求hibernate返回整個表時,請考慮每個組織對象的創建。您可以放置組織表,看看我們是否可以使其表現更好,如果您有一些關係,可以將它們視爲懶惰,並且您的組織對象會更輕。 – mvlaicevich