国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
play framework學(xué)習(xí)筆記之模型域model

play framework學(xué)習(xí)筆記之模型域model

分類: play framework 87人閱讀 評論(0) 收藏 舉報(bào)

在models包下

例子代碼

 

@Entity

public class Post extends Model {


public String title;


public String content;


public Date postDate;


@ManyToOne

public Author author;


@OneToMany

public List<Comment> comments;

 

 

//一些原來的service層的方法,play framework采用的是模型域充血模型

}

 

可見所有的filed都是public的沒有提供get,set方法,一切都只是為了開發(fā)的速度,和代碼的簡潔。

extends Model我們將不用寫id,將會(huì)繼承得到它。并且Model提供了很多很方便的方法。

我們經(jīng)常會(huì)用到的是它的 save() and find().方法,記住他們都是Model的static 方法,static方法在play framework中隨處可見

我們可以這么用 find("byTitleAndContent", title, content).first();  返回我們想要的那個(gè)Post實(shí)體

我們再來看一個(gè)更加復(fù)雜,但是很有用的方法

為了檢索tags多個(gè)tag標(biāo)簽的文章,取的是并集。

 

find( "select distinct p from Post p join p.tags as t where t.name in (:tags) group by p.id, p.author, p.title, p.content,p.postedAt having count(t.id) = :size" ).bind("tags", tags).bind("size", tags.length).fetch();

 

Note that we can’t use the Post.find(“…”, tags, tags.count) signature here. It’s just becausetags is already a vararg.


Model類全是靜態(tài)方法,而且簡單直接,我們應(yīng)該仔細(xì)研究它,它值得如此,如果我們希望快速開發(fā)web。

 

the tag cloud

 

List<Map> result = Tag.find( "select new map(t.name as tag, count(p.id) as pound) from Post p join p.tags as t group by t.name order by t.name" ).fetch();

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
創(chuàng)建模型
Entity Framework
Java開發(fā)框架Play框架快速入門(1)
ReoGrid.Mvvm:ReoGrid綁定模型
C#基礎(chǔ)系列:擴(kuò)展方法的使用
Java 中 Listener 模式示例
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服