当前位置: 首页 > 知识库问答 >
问题:

sping-data-rest发布的自定义jpa存储库方法

樊烨烨
2023-03-14

我已经向jpa存储库添加了一个自定义方法,如http://docs.spring.io/spring-data/data-jpa/docs/1.0.x/reference/html/#repositories.custom-实施情况

就我所见,当我使用spring数据rest时,这个方法并没有公开。是否有任何方法可以将其发布为spring data REST生成的REST API的一部分(无需自己创建spring MVC控制器)?

共有1个答案

东门城
2023-03-14

我检查了代码库-似乎他们明确禁用了自定义方法-不知道为什么。这是来自org的相关代码。springframework。数据存储库。果心支持默认存储信息

@Override
public Set<Method> getQueryMethods() {

    Set<Method> result = new HashSet<Method>();

    for (Method method : getRepositoryInterface().getMethods()) {
        method = ClassUtils.getMostSpecificMethod(method, getRepositoryInterface());
        if (isQueryMethodCandidate(method)) {
            result.add(method);
        }
    }

    return Collections.unmodifiableSet(result);
}

/**
 * Checks whether the given method is a query method candidate.
 * 
 * @param method
 * @return
 */
private boolean isQueryMethodCandidate(Method method) {
    return isQueryAnnotationPresentOn(method) || !isCustomMethod(method) && !isBaseClassMethod(method);
}
 类似资料:
  • 问题内容: 据我所知,当我使用spring-data-rest时,此方法没有公开。有什么方法可以将其发布为spring-data-rest生成的REST API的一部分(无需自己创建Spring MVC Controller)? 问题答案: 我检查了代码库-似乎他们已明确禁用了自定义方法-不知道为什么。这是来自org.springframework.data.repository.core.sup

  • 我刚开始使用Springboot和Accessingdatajpa,我决定看看https://spring.io.我决定看的指南是访问数据jpa。我一直跟踪到最后,然后运行了我的应用程序。出乎意料的是,我收到了一条错误消息。 所以问题似乎很简单。它正在我的用户类中查找属性“名称”。但我实际上并没有在任何地方使用属性“名称”。 我的存储库界面: 我的用户类: 应用类: 我假设你们中的一些人在想,你没

  • 我创建了一个maven项目,并添加了我需要的所有依赖项。我有一些使用spall-data-jpa的存储库,我添加了一些集成测试。 现在,如果我知道它是基于springmvc的,我需要添加spring data rest的ontop。但是我发现的所有例子,我需要添加spring boot来启动应用程序。我还注意到所有新的spring项目都使用spring boot。这意味着我必须学习并在我的项目中使

  • 问题内容: 我尝试实现JPA自定义存储库。 我有一个这样的过滤器对象: 从前端,我根据用户输入创建FilterPatient的实例。 因此,例如,用户可以值姓和cf属性或值和姓,等等。 我想实现一个自定义存储库,如下所示: 题: 根据用户输入,我必须执行其他查询,那么如何管理存储库?我必须编写查询方法以涵盖输入字段的不同组合,并且必须在服务中编写有关方法存储库调用的逻辑?或者我可以更好地自定义方法

  • 我尝试实现一个JPA自定义存储库。 我有一个过滤器对象,如下所示: 在前端,我根据用户输入创建了一个FilterPatient实例。 按用户分类的示例查询 和其他可能的配置,例如,在FilterPatient的cf属性为NULL中,查询将变为:

  • 我有一个简单的类客户端: ,clientrepository: ,ClientrepositoryCustom: 我在选择名字方面有哪一级的自由?这可能吗?是否有一个触发词,如果我想要一个与我实体的属性无关的名称,我必须使用它? 如果我查询两个属性。似乎我可以编写类似这样的方法,但我不希望有一个带有与方法名无关的附加参数的方法。 提前感谢,任何反馈都很感激!