sélectionnez à partir de deux tables à l'aide de JPQL

Je suis en utilisant JPQL pour récupérer des données. Je peux obtenir des données à l'aide de l'instruction

List persons = null;
persons = em.createQuery("select p.albumName from PhotoAlbum p , Roleuser r 
where r = p.userId and r.userID = 1");

Maintenant, je peux obtenir les noms d'album à l'aide de ceci:

int i=0;
for (i=0;i<persons.size(); i++)
{   
     System.out.println("Testing n "+ i +" " +  persons.get(0));
}

Maintenant je veux obtenir le nom de l'album et le roleuser de la ligne nommée firstname

Je suis l'aide de la requête

persons = em.createQuery("select r.firstName , p.albumName from PhotoAlbum p ,   
Roleuser r where r = p.userId and r.userID = 1").getResultList();

Maintenant, comment puis-je obtenir les lignes prénom et albumname que les personnes.get(0) retourne un objet

par l'exécution du code :

 for (i=0;i<persons.size(); i++)
    {
        //r = (Roleuser) persons.get(i);
        System.out.println("Testing n "+ i +" " + persons.get(i));
    }

J'obtiens ceci:

Testing n 0 [Ljava.lang.Object;@4edb4077
INFO: Testing n 1 [Ljava.lang.Object;@1c656d13
INFO: Testing n 2 [Ljava.lang.Object;@46dc08f5
INFO: Testing n 3 [Ljava.lang.Object;@654c0a43

Comment puis-je carte la persons.get(0) et obtenir le firstname et albumname?

OriginalL'auteur Pradyut Bhattacharya | 2010-08-25