【问题标题】:Spring Boot : Using JPA want to get the unique value from tableSpring Boot:使用 JPA 想要从表中获取唯一值
【发布时间】:2020-04-07 21:07:27
【问题描述】:

我有一张桌子

猫 ID |类别名称 | scatID |子类别名称 2 用户 1 x 2 用户 2 是 2 用户 3 z 2 用户 4 a 2 用户 5 b

我可以使用 SpringBoot 获取 JSON 格式的所有值。

我的要求: 我想获得唯一的 CategoryName 属性,但在当前情况下,我让所有用户都来了 5 次。

我正在寻找解决方案。请任何人都可以帮助克服使用 Spring Boot JPA 实现。

【问题讨论】:

  • 您的具体要求是什么?
  • 你是使用 JPA 方法还是原生查询来获取数据?

标签: spring-boot jpa spring-data-jpa


【解决方案1】:

您可以在存储库界面中使用Query 注释。 例如,下面的 sn -p 代码返回所有不同的categoryName

声明一个简单的bean类:

package com.example.test;

public class CategoryNameClass {
    private String CategoryName;

    public CategoryNameClass(String CategoryName) {
        this.CategoryName = CategoryName;
    }

    public String getCategoryName() {
        return CategoryName;
    }

    public void setCategoryName(String categoryName) {
        CategoryName = categoryName;
    }
}

然后使用以下查询:

public interface ARepo extends JpaRepository<A, String> {

    @Query("SELECT DISTINCT new com.example.test.CategoryNameClass(a.categoryName) FROM A a ")
    List<CategoryNameClass> findAllCategoryName();
}

【讨论】:

  • 嗨 Nasir,我实现了,但数据没有以 JSON 格式填充,表属性阻止我在下拉列表(AngularJS)中填充值。值的格式为 ["154,BBBBB","200,AAAAA"]
  • @Jaiswal:所以你必须创建一个新类。我编辑了我的答案。
猜你喜欢
  • 2017-07-25
  • 2020-12-17
  • 2021-08-23
  • 2017-04-12
  • 1970-01-01
  • 2020-03-10
  • 2019-04-08
  • 2019-01-13
  • 1970-01-01
相关资源
最近更新 更多