(Référence) Livres que vous étudiez https://www.amazon.co.jp/Play-Framework-2%E5%BE%B9%E5%BA%95%E5%85%A5%E9%96%80-Java%E3%81%A7%E3%81%AF%E3%81%98%E3%82%81%E3%82%8B%E3%82%A2%E3%82%B8%E3%83%A3%E3%82%A4%E3%83%ABWeb%E9%96%8B%E7%99%BA-%E6%B4%A5%E8%80%B6%E4%B9%83/dp/4798133922/ref=cm_cr_srp_d_product_top?ie=UTF8
Dans le cadre de jeu, la fonction de recherche est regroupée dans une classe appelée Model.Finder. L'utilisation de base consiste à créer une instance dans le modèle et à la récupérer si nécessaire.
new Finder<Clé primaire,entité>(Clé primaire.class,entité.class);
Enregistrez l'instance créée dans le champ statique et récupérez l'entité avec cette méthode si nécessaire.
public String toString() {
return ("[id:"+id+",name:"+name+",mail:"+mail+",message:"+message+",date:"+postdate+"]");
}
Remplacez la méthode toString de la classe d'objets pour plus de clarté (Référence sur la classe d'objets) https://docs.oracle.com/javase/jp/7/api/java/lang/Object.html
package models;
import java.util.Date;
import javax.persistence.*;
import javax.validation.*;
import play.data.validation.*;
import play.db.ebean.*;
@Entity
public class Message extends Model {
@Id
public Long id;
public String name;
public String mail;
public String message;
public Date postdate;
public static Finder<Long,Message>find = new Finder<Long,Message>(Long.class,Massage.class);
@Override
public String toString() {
return ("[id:"+id+",name:"+name+",mail:"+mail+",message:"+message+",date:"+postdate+"]");
}
}
Décrivez les paramètres afin que l'entité puisse être extraite de la classe de contrôleur.
List<entité>Variable = instance du Finder.all();
Une liste Java est une collection ordonnée qui peut contenir des éléments en double. (Qu'est-ce qu'une liste de référence) https://eng-entrance.com/java-array-list#List
List<Message>datas=Message.find.all();
Vous appelez la méthode all de l'instance de recherche. La méthode all renvoie toutes les méthodes stockées dans une liste.
package controllers;
import play.*;
import play.mvc.*;
import views.html.*;
public class Application extends Controller {
//Action lors de l'accès à l'itinéraire
public static Result index(){
List<Message>datas=Message.find.all();
return ok(index.render("Exemple de base de données"));
}
}
Modifiez la liste reçue pour qu'elle puisse être sortie telle quelle.
@(msg:String,datas:List[Message])
@main("Sample page") {
<h1>Hello!</h1>
<p>@msg</p>
<pre>@datas</pre>
}
Recommended Posts