/** * 一个参数,匹配两个字段 * @param name2 * @Param pageable 分页参数 * @return * 这里Param的值和=:后面的参数匹配,但不需要和方法名对应的参数值对应 * 这里增加了@QueryHints注解,是给查询添加一些额外的提示 * 比如当前的name值为HINT_COMMENT是在查询的时候带上一些备注信息 */ @QueryHints(value = { @QueryHint(name = HINT_COMMENT, value = "a query for pageable")}) @Query("select c from Customer c where c.firstName=:name or c.lastName=:name") Page<Customer> findByName(@Param("name") String name2,Pageable pageable);
@Query("from DataDict order by rgt asc") @QueryHints({@QueryHint(name = org.hibernate.jpa.QueryHints.HINT_CACHEABLE, value = "true")}) List<DataDict> findAllCached(); }
@Query("select count(nm) from NotifyMessageRead nm where nm.notifyMessage.id=:notifyMessageId") @QueryHints({ @QueryHint(name = org.hibernate.jpa.QueryHints.HINT_CACHEABLE, value = "true") }) Integer countByNotifyMessage(@Param("notifyMessageId") Long notifyMessageId); }
@Query("from Menu where depth!=0 order by rgt desc") @QueryHints({@QueryHint(name = org.hibernate.jpa.QueryHints.HINT_CACHEABLE, value = "true")}) List<Menu> findAllCached(); }
@Query("from NotifyMessage where (effective is null or (effective=true and expireTime is not null))") @QueryHints({ @QueryHint(name = org.hibernate.jpa.QueryHints.HINT_CACHEABLE, value = "true") }) public List<NotifyMessage> findTobeEffectiveMessages(); }
@QueryHints({@QueryHint(name = org.hibernate.jpa.QueryHints.HINT_CACHEABLE, value = "true")}) @Query("from DataDict where primaryKey=:primaryKey") DataDict findByRootPrimaryKey(@Param("primaryKey") String primaryKey);
@Query("from Role order by code asc") @QueryHints({ @QueryHint(name = org.hibernate.jpa.QueryHints.HINT_CACHEABLE, value = "true") }) List<Role> findAllCached();
@Query("from Privilege order by code asc") @QueryHints({ @QueryHint(name = org.hibernate.jpa.QueryHints.HINT_CACHEABLE, value = "true") }) List<Privilege> findAllCached();
@QueryHints({@QueryHint(name = org.hibernate.jpa.QueryHints.HINT_CACHEABLE, value = "true")}) DemoSiteUser findByAccount(Account account); }
@Query("from NotifyMessage where effective=true order by orderRank desc,publishTime desc") @QueryHints({ @QueryHint(name = org.hibernate.jpa.QueryHints.HINT_CACHEABLE, value = "true") }) public List<NotifyMessage> findEffectiveMessages();
@QueryHints({@QueryHint(name = org.hibernate.jpa.QueryHints.HINT_CACHEABLE, value = "true")}) List<DistrictData> findAllByOrderByIdAsc(); }
@QueryHints({@QueryHint(name = org.hibernate.jpa.QueryHints.HINT_CACHEABLE, value = "true")}) Account findByAccessToken(String accessToken); }
@Query("from NotifyMessageRead where readUser.id=:readUserId and notifyMessage.id in (:scopeEffectiveMessageIds)") @QueryHints({ @QueryHint(name = org.hibernate.jpa.QueryHints.HINT_CACHEABLE, value = "true") }) public List<NotifyMessageRead> findByReadUserAndNotifyMessageIn(@Param("readUserId") Long readUserId, @Param("scopeEffectiveMessageIds") List<Long> scopeEffectiveMessageIds);
@Query("from DataDict where parent.id=:parentId and disabled=false order by rgt asc") @QueryHints({@QueryHint(name = org.hibernate.jpa.QueryHints.HINT_CACHEABLE, value = "true")}) List<DataDict> findEnabledChildrenByParentId(@Param("parentId") Long parentId);
@Query("from RunningExecutionPlan r where r.flowUUID = :flowUUID") @QueryHints({@QueryHint(name = "org.hibernate.cacheable", value = "true")}) public List<RunningExecutionPlan> findByUuidCached(@Param("flowUUID") String flowUUID);
@QueryHints({@QueryHint(name = org.hibernate.jpa.QueryHints.HINT_CACHEABLE, value = "true")}) List<AttachmentFile> findBySourceTypeAndSourceIdAndSourceCategoryOrderByOrderIndexAsc(String sourceType, String sourceId, String sourceCategory);
@QueryHints(value = @QueryHint(name = HINT_FETCH_SIZE, value = "" + Integer.MIN_VALUE)) @Query(value = "select t from Todo t") Stream<Todo> streamAll();
@QueryHints({@QueryHint(name = org.hibernate.jpa.QueryHints.HINT_CACHEABLE, value = "true")}) List<DistrictData> findByIdStartsWithOrderByIdAsc(String idPrefix);
@QueryHints({@QueryHint(name = org.hibernate.jpa.QueryHints.HINT_CACHEABLE, value = "true")}) Account findByDataDomainAndAuthTypeAndEmail(String dataDomain, Account.AuthTypeEnum authType, String email);
@QueryHints({@QueryHint(name = org.hibernate.jpa.QueryHints.HINT_CACHEABLE, value = "true")}) List<OauthAccount> findByAccountAndOauthTypeAndAuthType(Account account, GlobalConstant.OauthTypeEnum oauthType, Account.AuthTypeEnum authType);