Interface AgentSettingsRepository

All Superinterfaces:
org.springframework.data.repository.CrudRepository<AgentSettingsEntity,Long>, org.springframework.data.jpa.repository.JpaRepository<AgentSettingsEntity,Long>, org.springframework.data.jpa.repository.JpaSpecificationExecutor<AgentSettingsEntity>, org.springframework.data.repository.ListCrudRepository<AgentSettingsEntity,Long>, org.springframework.data.repository.ListPagingAndSortingRepository<AgentSettingsEntity,Long>, org.springframework.data.repository.PagingAndSortingRepository<AgentSettingsEntity,Long>, org.springframework.data.repository.query.QueryByExampleExecutor<AgentSettingsEntity>, org.springframework.data.repository.Repository<AgentSettingsEntity,Long>

@Repository public interface AgentSettingsRepository extends org.springframework.data.jpa.repository.JpaRepository<AgentSettingsEntity,Long>, org.springframework.data.jpa.repository.JpaSpecificationExecutor<AgentSettingsEntity>
Repository for AgentSettingsEntity
  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.springframework.data.jpa.repository.JpaSpecificationExecutor

    org.springframework.data.jpa.repository.JpaSpecificationExecutor.SpecificationFluentQuery<T extends Object>
  • Method Summary

    Modifier and Type
    Method
    Description
     
     
     
     
     
    查找 AgentSettings 并使用 JOIN FETCH 加载第一级关联 加载 serviceSettings 和 draftServiceSettings,但不加载它们的集合 Note: 由于 Hibernate MultipleBagFetchException 限制, 不能在一个查询中同时 JOIN FETCH 多个 List 集合 FAQ 集合将在事务内通过访问触发懒加载
    使用悲观锁读取默认配置,防止并发下重复创建/更新导致的冲突

    Methods inherited from interface org.springframework.data.repository.CrudRepository

    count, delete, deleteAll, deleteAll, deleteAllById, deleteById, existsById, findById, save

    Methods inherited from interface org.springframework.data.jpa.repository.JpaRepository

    deleteAllByIdInBatch, deleteAllInBatch, deleteAllInBatch, deleteInBatch, findAll, findAll, flush, getById, getOne, getReferenceById, saveAllAndFlush, saveAndFlush

    Methods inherited from interface org.springframework.data.jpa.repository.JpaSpecificationExecutor

    count, delete, exists, findAll, findAll, findAll, findAll, findBy, findOne

    Methods inherited from interface org.springframework.data.repository.ListCrudRepository

    findAll, findAllById, saveAll

    Methods inherited from interface org.springframework.data.repository.ListPagingAndSortingRepository

    findAll

    Methods inherited from interface org.springframework.data.repository.PagingAndSortingRepository

    findAll

    Methods inherited from interface org.springframework.data.repository.query.QueryByExampleExecutor

    count, exists, findAll, findBy, findOne
  • Method Details

    • findByUid

    • findByUidWithCollections

      @Query("select a from AgentSettingsEntity a left join fetch a.serviceSettings left join fetch a.draftServiceSettings where a.uid = :uid") Optional<AgentSettingsEntity> findByUidWithCollections(@Param("uid") String uid)
      查找 AgentSettings 并使用 JOIN FETCH 加载第一级关联 加载 serviceSettings 和 draftServiceSettings,但不加载它们的集合 Note: 由于 Hibernate MultipleBagFetchException 限制, 不能在一个查询中同时 JOIN FETCH 多个 List 集合 FAQ 集合将在事务内通过访问触发懒加载
    • findByOrgUid

      List<AgentSettingsEntity> findByOrgUid(String orgUid)
    • findByOrgUidAndIsDefaultTrue

      Optional<AgentSettingsEntity> findByOrgUidAndIsDefaultTrue(String orgUid)
    • findDefaultForUpdate

      @Lock(PESSIMISTIC_WRITE) @Query("select a from AgentSettingsEntity a where a.orgUid = :orgUid and a.isDefault = true") Optional<AgentSettingsEntity> findDefaultForUpdate(@Param("orgUid") String orgUid)
      使用悲观锁读取默认配置,防止并发下重复创建/更新导致的冲突
    • findByOrgUidAndEnabledTrue

      List<AgentSettingsEntity> findByOrgUidAndEnabledTrue(String orgUid)
    • existsByNameAndOrgUid

      Boolean existsByNameAndOrgUid(String name, String orgUid)