Maison > Java > javaDidacticiel > Comment sélectionner des colonnes spécifiques dans Spring JPA à l'aide de projections ?

Comment sélectionner des colonnes spécifiques dans Spring JPA à l'aide de projections ?

Susan Sarandon
Libérer: 2024-11-28 22:55:12
original
236 Les gens l'ont consulté

How to Select Specific Columns in Spring JPA Using Projections?

Sélection de colonnes personnalisées dans Spring JPA

La sélection de colonnes spécifiques dans une table dans Spring JPA vous permet de récupérer uniquement les données dont vous avez besoin, réduisant ainsi bande passante et amélioration des performances. Voici comment y parvenir en utilisant Spring Data JPA :

Utilisation de projections

Spring Data JPA prend en charge les projections, qui vous permettent de créer des interfaces personnalisées qui définissent les colonnes souhaitées. à récupérer. Par exemple, pour l'exemple de requête mentionné :

SELECT projectId, projectName FROM projects
Copier après la connexion

vous créeriez une interface :

interface ProjectIdAndName {
    String getId();
    String getName();
}
Copier après la connexion

Méthode du référentiel

Ensuite, ajoutez une méthode à votre référentiel qui renvoie la projection souhaitée :

List<ProjectIdAndName> findAll();
Copier après la connexion

En appelant la méthode findAll, vous pouvez récupérer une liste d'objets qui contiennent uniquement les propriétés id et name, sans récupérer l'intégralité des données de la ligne.

Exemple d'utilisation

Pour utiliser cette fonctionnalité, injectez le référentiel dans votre service ou contrôleur et appelez la méthode findAll comme d'habitude :

@Autowired
private ProjectRepository projectRepository;

@GetMapping("/projects")
public List<ProjectIdAndName> getAllProjects() {
    return projectRepository.findAll();
}
Copier après la connexion

Cela renverra une liste d'objets ProjectIdAndName, contenant les colonnes sélectionnées pour chacun projet.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal