/***********************************************************
 * @Description : 题目的类别表，从内容角度划分，比如数学、语文、英语等
 * @author      : 梁山广(Laing Shan Guang)
 * @date        : 2019/5/14 07:46
 * @email       : liangshanguang2@gmail.com
 ***********************************************************/
package lsgwr.exam.entity;

/**
 * QuestionCategory类代表了一个实体，用于在数据库中存储问题类别信息。
 * 这个类被标记为@Entity，意味着它是一个JPA实体，可以映射到数据库表。
 * Lombok的@Data注解用于自动生成getter和setter方法，以及toString、equals和hashCode方法。
 */
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;

@Data
@Entity
public class QuestionCategory {
    /**
     * 问题类别ID，是这个实体的主键。
     * &#064;Id注解指明了这个字段是实体的主键。
     * &#064;GeneratedValue注解表示这个字段的值是自动生成的。
     * &#064;JsonProperty注解用于序列化和反序列化时，指定JSON对象中的键名。
     */
    @Id
    @GeneratedValue
    @JsonProperty("id")
    private Integer questionCategoryId;
    /**
     * 问题类别名称，用于描述这个类别的名字。
     * &#064;JsonProperty注解用于序列化和反序列化时，指定JSON对象中的键名。
     */
    @JsonProperty("name")
    private String questionCategoryName;
    /**
     * 问题类别描述，用于提供这个类别的详细信息或说明。
     * &#064;JsonProperty注解用于序列化和反序列化时，指定JSON对象中的键名。
     */
    @JsonProperty("description")
    private String questionCategoryDescription;
}
