作成するModelの定義はこちらのIssueのとおり。
まずはModelを作成していきます。作るのはcoreのサブプロジェクト内。
https://github.com/YoshiteruIwasaki/PlayFrameworkRecruitConsole/blob/f2f8ff770ea3b3ca15a04137a0d56fe269f6c962/modules/core/app/models/bases/Site.java
@Entity
public class Site extends Model {
private static final long serialVersionUID = 3890695880010099962L;
@Id
public Long siteId;
@Required
@NotNull
public String title;
@Required
@NotNull
@Lob
public String url;
@CreatedTimestamp
public Date createDate;
@Version
public Date updateDate;
}
個人的にはLazyLoadとかを信頼してないので、Model同士のひも付けは自前でする派です。urlは255文字を超える場合もあるので(企業の採用ページだったら超えることもほぼ無いはずですが)、@Lobにしています。
ちなみに、NotNullのアノテーションですが、
libraryDependencies ++= Seq( // Select Play modules javaJdbc, // Java database API javaEbean, // Java Ebean plugin //javaJpa, // Java JPA plugin javaCore, // The core Java API cache, "org.webjars" %% "webjars-play" % "2.2.0", "org.webjars" % "bootstrap" % "3.1.1", "org.webjars" % "font-awesome" % "4.0.3", "mysql" % "mysql-connector-java" % "5.1.29", "org.avaje.ebeanorm" % "avaje-ebeanorm-api" % "3.1.1")のようにして呼ぶ必要があります。
0 件のコメント:
コメントを投稿