跟着汤阳光同志做一个OA系统(十一):论坛模块、实体的特殊属性、CKEditor

/** 普通帖 */

    publicstaticfinalintTYPE_NORMAL = 0;

 

    /** 精华帖 */

    publicstaticfinalintTYPE_BEST = 1;

 

    /** 置顶帖 */

    publicstaticfinalintTYPE_TOP = 2;

 

public List<Topic> findByForum(Forum forum) {

       return getSession().createQuery(//

              // 排序:所有置顶帖在最上面,并按最后更新时间排序,让新状态的在上面。

              "FROM Topict WHERE t.forum=? ORDER BY (CASE t.type WHEN 2 THEN 2 ELSE 0 END) DESC, t.lastUpdateTimeDESC")//

              .setParameter(0, forum)//

              .list();

    }

 

这就是抹掉01之间的区别,可以用type/2


public List<Topic> findByForum(Forum forum) {

       return getSession().createQuery(//

              // 排序:所有置顶帖在最上面,并按最后更新时间排序,让新状态的在上面。

              "FROM Topict WHERE t.forum=? ORDER BY (CASE t.type WHEN 2 THEN 2 ELSE 0 END) DESC,t.lastUpdateTime DESC")//

              .setParameter(0, forum)//

              .list();

    }


一、特殊属性的作用

Forum

topicCount

主题数量

articleCount

文章数量(主题数+回复数)

lastTopic

最后发表的主题

Topic

replyCount

回复数量

lastReply

最后发表的回复

lastUpdateTime

最后更新时间(主题的发表时间或最后回复的时间)

 

 

二、特殊属性的维护

 

 

发表新主题

发表新回复

Forum

topicCount

1

 

articleCount

1

1

lastTopic

更新为当前的新主题

 

Topic

replyCount

0,默认值

1

lastReply

Null,默认值

更新为当前的新回复

lastUpdateTime

主题的发表时间

更新为当前新回复的时间

 

 

使用fckeditor


跟着汤阳光同志做一个OA系统(十一):论坛模块、实体的特殊属性、CKEditor_第1张图片

你可能感兴趣的:(跟着汤阳光同志做一个OA系统(十一):论坛模块、实体的特殊属性、CKEditor)