博客項目(二)-創建實體類

一.創建實體類

1.User:用戶

package com.test.ssm.blog.entity;


import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/*
用戶
 */
@Data
public class User implements Serializable {
    private static final long serialVersionUID = -4415517704211731385L;
    private Integer userId;    //用戶ID
    private String  userName;  //用戶名稱
    private String userPass;   //用戶登錄密碼
    private String userNickname;  //用戶暱稱
    private String userEmail;    //郵件
    private String userUrl;     //網址
    private String userAvatar;  //頭像
    private String userLastLoginIp;  //上一次登錄IP
    private Date userRegisterTime;    //註冊時間
    private Date userLastLoginTime;   //上一次登錄時間
    private Integer userStatus;      //狀態
    private Integer userAssess;     //用戶權限
    private Integer articleCount;   //文章數量,不是數據庫的字段
}

2.Article:文章

package com.test.ssm.blog.entity;

import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/*
文章
 */
@Data
public class Article implements Serializable {
    private static final long serialVersionUID = 5207865247400761539L;
    private Integer articleId;  //ID
    private Integer articleUserId; //作者ID
    private String articleTitle;  //標題
    private Integer articleViewCount;  //查看數量
    private Integer articleCommentCount;  //評論數量
    private Integer articleLikeCount;  //點贊數量
    private Date articleCreateTime; //創建時間
    private Date articleUpdateTime;  //更新時間
    private Integer articleIsComment; //是否評論
    private Integer articleStatus; //狀態
    private Integer articleOrder;  //順序
    private String articleContent;  //內容
    private String articleSummary; //總結
    private User user;  //發佈用戶
    private List<Tag> tagList;  //標籤列表
    private List<Category> categoryList;  //分類列表

}

3.Category:文章分類

package com.test.ssm.blog.entity;

import lombok.Data;

import java.io.Serializable;

/*
文章分類
 */
@Data
public class Category implements Serializable {
    private static final long serialVersionUID = 6687286913317513141L;
    private Integer categoryId;  //ID
    private Integer categoryPid; //分類的父ID
    private String categoryName;  //名稱
    private String categoryDescription;  //描述
    private Integer categoryOrder; //優先順序
    private String categoryIcon;  //圖像
    private Integer articleCount;  //文章數量
    private Integer categoryUserId;  //分類屬於哪個用戶

    public Category(Integer categoryId, String categoryName) {
        this.categoryId = categoryId;
        this.categoryName = categoryName;
    }

    public Category(Integer categoryId, Integer categoryPid, String categoryName, String categoryDescription, Integer categoryOrder, String categoryIcon, Integer articleCount, Integer categoryUserId) {
        this.categoryId = categoryId;
        this.categoryPid = categoryPid;
        this.categoryName = categoryName;
        this.categoryDescription = categoryDescription;
        this.categoryOrder = categoryOrder;
        this.categoryIcon = categoryIcon;
        this.articleCount = articleCount;
        this.categoryUserId = categoryUserId;
    }



    public Category(Integer categoryId) {
        this.categoryId = categoryId;
    }

    /*
    未分類
     */
    public static  Category Default(){
        return  new Category(100000000,"未分類");
    }
}

4.Tag:標籤

 

package com.test.ssm.blog.entity;


import lombok.Data;

import java.io.Serializable;

/*
標籤
 */
@Data
public class Tag implements Serializable {
    private static final long serialVersionUID = 605449151900057035L;
    private Integer tagId;     //標籤ID
    private String tagName;   //標籤名稱
    private String tagDescription;  //標籤描述
    private Integer tagUserId;  //標籤屬於哪個用戶
    private Integer articleCount;   //文章數量,不是數據庫字段

    public Tag(){

    }

    public Tag(Integer tagId){
        this.tagId=tagId;
    }

    public Tag(Integer tagId, String tagName, String tagDescription, Integer tagUserId, Integer articleCount) {
        this.tagId = tagId;
        this.tagName = tagName;
        this.tagDescription = tagDescription;
        this.tagUserId = tagUserId;
        this.articleCount = articleCount;
    }



}

5.Comment:評論

package com.test.ssm.blog.entity;

import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/*
評論
 */
@Data
public class Comment implements Serializable {
    private static final long serialVersionUID = -1038897351672911219L;
    private Integer commentId;  //ID
    private Integer commentPid;  //評論的評論需要,父ID
    private String commentPname;  //評論的評論需要,父名稱
    private Integer commentArticleId; //評論的文章ID
    private String commentAuthorName; //作者名稱
    private String commentAuthorEmail;  //作者郵件
    private String commentAuthorUrl;  //網址
    private String commentAuthorAvatar;  //圖像
    private String commentContent; //內容
    private String commentAgent; //代理
    private String commentIp;; //IP
    private Date commentCreateTime; //創建時間
    private Integer commentRole;  //角色,管理員1,訪客0
    private  Article article;  //非數據庫字段。評論的文章

}

6.Link:鏈接

package com.test.ssm.blog.entity;

import lombok.Data;

import java.io.Serializable;
import java.util.Date;

@Data
public class Link implements Serializable {
    private static final long serialVersionUID = -259829372268790508L;
    private Integer linkId;  //ID
    private String linkUrl;  //地址
    private String linkName;  //名稱
    private String linkImage;  //圖像
    private String linkDescription;  //描述
    private String linkOwnerNickname;  //暱稱
    private String linkOwnerContact;  //聯繫方式
    private Date linkUpdateTime;  //更新時間
    private Date linkCreateTime;  //創建時間
    private Integer linkOrder;  //優先順序
    private Integer linkStatus;  //狀態
}

7.Menu:菜單

package com.test.ssm.blog.entity;

import lombok.Data;

import java.io.Serializable;
/*
菜單
 */
@Data
public class Menu implements Serializable {
    private static final long serialVersionUID = 489914127235951698L;
    private Integer menuId;  //ID
    private String menuName;  //名稱
    private String menuUrl;   //網址鏈接
    private Integer menuLevel;  //層次
    private String meanuIcon;  //圖像
    private String meanuOrder;

}

8.Notice:公告

package com.test.ssm.blog.entity;

import lombok.Data;

import java.io.Serializable;
import java.util.Date;
/*
公告
 */

@Data
public class Notice implements Serializable {
    private static final long serialVersionUID = -4901560494243593100L;
    private Integer noticeId;  //ID
    private String noticeTitle;  //標題
    private String noticeContent;  //內容
    private Date noticeCreateTime;  //創建時間
    private Date noticeUpdateTime;   //更新還是件
    private  Integer noticeStatus;   //狀態
    private Integer noticeOrder;   //優先順序

}

9.Options:站點信息

10.Page:頁面

package com.test.ssm.blog.entity;

import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/*
頁面
 */
@Data
public class Page implements Serializable {
    private static final long serialVersionUID = 3927496662110298634L;
    private Integer pageId;   //頁面ID
    private String pageKey;   //頁面關鍵字
    private String pageTitle;  //頁面標題
    private String pageContent;  //內容
    private Date pageCreateTime;  //創建時間
    private Date pagetUpdateTime;  //更新時間
    private  Integer pageViewCount;  //查看數量
    private Integer pageCommentCount;  //評論數量
    private Integer pageStatus;   //狀態


}

11.ArticleCategoryRef:文章與分類的關聯

package com.test.ssm.blog.entity;

import lombok.Data;

import java.io.Serializable;

@Data
public class ArticleCategoryRef implements Serializable {
    private static final long serialVersionUID = -6809206515467725995L;
    private Integer articleId;  //文章ID
    private Integer categoryId;  //分類ID

    public ArticleCategoryRef(Integer articleId, Integer categoryId) {
        this.articleId = articleId;
        this.categoryId = categoryId;
    }

    public ArticleCategoryRef() {
    }
}

12.ArticleTagRef:文章與標籤的分類

package com.test.ssm.blog.entity;

import lombok.Data;

import java.io.Serializable;

/*
文章對標籤的引用
 */
@Data
public class ArticleTagRef implements Serializable {
    private static final long serialVersionUID = -5816783232020910492L;
    private Integer articleId; //文章ID
    private Integer tagId;   //標籤ID
    public ArticleTagRef(){

    }

    public ArticleTagRef(Integer articleId, Integer tagId) {
        this.articleId = articleId;
        this.tagId = tagId;
    }
}

二.狀態信息描述

我們知道文章有發佈和草稿兩種狀態,分類有顯示和隱藏兩種狀態。爲了更好的在頁面進行顯示,使用枚舉類進行顯示。

1.文章狀態

package com.test.ssm.blog.enums;

/**
 * 因爲文章有發佈和草稿兩個狀態
 * 所有寫了一個枚舉類
 */

public enum ArticleStatus {

    PUBLISH(1, "已發佈"),
    DRAFT(0, "草稿");

    private Integer value;

    private String message;

    ArticleStatus(Integer value, String message) {
        this.value = value;
        this.message = message;
    }

    public Integer getValue() {
        return value;
    }

    public void setValue(Integer value) {
        this.value = value;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

}

2.分類狀態

package com.test.ssm.blog.enums;



public enum CategoryStatus {

    NORMAL(1, "正常"),
    HIDDEN(0, "隱藏");

    private Integer value;

    private String message;

    CategoryStatus(Integer value, String message) {
        this.value = value;
        this.message = message;
    }

    public Integer getValue() {
        return value;
    }

    public void setValue(Integer value) {
        this.value = value;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }
}

3.評論狀態

package com.test.ssm.blog.enums;

public enum ArticleCommentStatus {
    ALLOW(1, "允許"),
    NOT_ALLOW(0, "不允許");

    private Integer value;

    private String message;

    ArticleCommentStatus(Integer value, String message) {
        this.value = value;
        this.message = message;
    }

    public Integer getValue() {
        return value;
    }

    public void setValue(Integer value) {
        this.value = value;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }
}

4.鏈接狀態

package com.test.ssm.blog.enums;



public enum LinkStatus {

    NORMAL(1, "顯示"),
    HIDDEN(0, "隱藏");

    private Integer value;

    private String message;

    LinkStatus(Integer value, String message) {
        this.value = value;
        this.message = message;
    }

    public Integer getValue() {
        return value;
    }

    public void setValue(Integer value) {
        this.value = value;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }
}

5.菜單狀態

package com.test.ssm.blog.enums;



public enum MenuLevel {

    TOP_MENU(1, "頂部菜單"),
    MAIN_MENU(2, "主體菜單");

    private Integer value;

    private String message;

    MenuLevel(Integer value, String message) {
        this.value = value;
        this.message = message;
    }

    public Integer getValue() {
        return value;
    }

    public void setValue(Integer value) {
        this.value = value;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }
}

6.公告狀態

package com.test.ssm.blog.enums;



public enum NoticeStatus {

    NORMAL(1, "顯示"),
    HIDDEN(0, "隱藏");

    private Integer value;

    private String message;

    NoticeStatus(Integer value, String message) {
        this.value = value;
        this.message = message;
    }

    public Integer getValue() {
        return value;
    }

    public void setValue(Integer value) {
        this.value = value;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }
}

7.頁面狀態

package com.test.ssm.blog.enums;



public enum PageStatus {

    NORMAL(1, "顯示"),
    HIDDEN(0, "隱藏");

    private Integer value;

    private String message;

    PageStatus(Integer value, String message) {
        this.value = value;
        this.message = message;
    }

    public Integer getValue() {
        return value;
    }

    public void setValue(Integer value) {
        this.value = value;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }
}

8.評論權限

package com.test.ssm.blog.enums;


public enum Role {

    ADMIN(1, "博主"),
    VISITOR(0, "訪客");

    private Integer value;

    private String message;

    Role(Integer value, String message) {
        this.value = value;
        this.message = message;
    }

    public Integer getValue() {
        return value;
    }

    public void setValue(Integer value) {
        this.value = value;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章