如何从表中检索特定列--- JPA或CrudRepository?我只想检索用户表中的电子邮件列

dps

用户模型

@Entity
@Table(name = "user",uniqueConstraints = {@UniqueConstraint(columnNames = {"email"}) })
public class User implements Serializable{

    /**
     * 
     */
    private static final long serialVersionUID = 382892255440680084L;

    private int id;
    private String email;
    private String userName;

    private Set<Role> roles = new HashSet<Role>();

    public User() {}

    }

我对应的用户回购:

    package hello.repository;

    import org.springframework.data.repository.CrudRepository;

    import hello.model.User;

    public interface UserRepository extends CrudRepository<User,Long> {

    }

在控制器中,我这样做:

@GetMapping(path="/all")
    public @ResponseBody Iterable<User> getAllUsers() {
        // This returns a JSON or XML with the users
        return userRepository.findAll();
    }

我发现这检索了整个用户表。但这不是我想要的。我的要求是仅来自用户表的电子邮件列。

如何仅从用户表中检索电子邮件?---> SQL查询,例如来自用户的SELECT电子邮件;

阿吉特·索曼(Ajit Soman)

像这样使用@Query注释创建查询UserRepository

public interface UserRepository extends CrudRepository<User,Long> {
   @Query("select u.email from User u")
   List<String> getAllEmail();
}

并在您的控制器中调用

@GetMapping(path="/user/email")
public @ResponseBody List<String> getAllEmail() {
    return userRepository.getAllEmail();
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何检索表中特定 ID 的列的最频繁值

如何从多个表中检索特定于用户会话ID的列?

在Flutter中从Firebase检索用户电子邮件

检索扩展中的chromebook用户电子邮件

从NameCheap私人电子邮件中检索电子邮件

如何从SQL Server表中检索特定的行?

从表PHP的列中检索选择的值

SQL-从联接表中检索列

检索给定userId的用户电子邮件

解析无法检索用户电子邮件

关系检索用户电子邮件

在SQLite的特定列中检索包含特定值的表中最新行的最佳方法是什么?

从数据库表中检索主键、标识列和特定名称列

如何从电子邮件地址中检索姓名

如何使用Linux从电子邮件中检索HTML?

如何使用ADF从Outlook中检索电子邮件的正文

从Facebook检索用户名和电子邮件ID到我的Android应用程序中

如何通过JPA从联接的第二张表中检索特定行

从多个表中检索特定值

从表中检索特定时间

使用MeteorJS堆栈,如何从用户发布的帖子中检索带有用户ID的用户电子邮件

从他的电子邮件ID中检索用户Outlook显示名称(即用户名)

如何从列中检索特定信息并显示其出现次数

如何使响应式电子邮件表中的列图像保持相同高度

TSQL:检索第一列值作为行数据,并排除NULL以产生HTML表电子邮件

如何检索当前用户的电子邮件地址?

如何从 Laravel 中的数据库表向多个用户(电子邮件地址)发送动态电子邮件?

如何从特定列检索数据?

如何获取表中特定列的长度