(Referenz) Bücher, die Sie studieren 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
Im Play Framework ist die Suchfunktion in einer Klasse namens Model.Finder gruppiert. Die grundlegende Verwendung besteht darin, eine Instanz im Modell zu erstellen und bei Bedarf abzurufen.
new Finder<Primärschlüssel,Entität>(Primärschlüssel.class,Entität.class);
Speichern Sie die erstellte Instanz im statischen Feld und rufen Sie die Entität bei Bedarf mit dieser Methode ab.
public String toString() {
return ("[id:"+id+",name:"+name+",mail:"+mail+",message:"+message+",date:"+postdate+"]");
}
Überschreiben Sie zur besseren Übersicht die toString-Methode der Objektklasse (Referenz zur Objektklasse) 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+"]");
}
}
Beschreiben Sie die Einstellungen, damit die Entität aus der Controller-Klasse abgerufen werden kann.
List<Entität>Variable = Finder-Instanz.all();
Eine Java-Liste ist eine geordnete Sammlung, die doppelte Elemente enthalten kann. (Was ist eine Referenzliste?) Https://eng-entrance.com/java-array-list#List
List<Message>datas=Message.find.all();
Sie rufen die all-Methode der Suchinstanz auf. Die Methode all gibt alle gespeicherten Methoden in einer Liste zurück.
package controllers;
import play.*;
import play.mvc.*;
import views.html.*;
public class Application extends Controller {
//Aktion beim Zugriff auf die Route
public static Result index(){
List<Message>datas=Message.find.all();
return ok(index.render("Datenbankbeispiel"));
}
}
Ändern Sie die empfangene Liste so, dass sie unverändert ausgegeben werden kann.
@(msg:String,datas:List[Message])
@main("Sample page") {
<h1>Hello!</h1>
<p>@msg</p>
<pre>@datas</pre>
}
Recommended Posts