package edu.sjtu.infosec.ismp.manager.RAM.model; import java.io.Serializable; import java.util.Set; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.OneToMany; import javax.persistence.Table; import org.apache.commons.lang.builder.EqualsBuilder; import org.apache.commons.lang.builder.HashCodeBuilder; import org.apache.commons.lang.builder.ToStringBuilder; import org.hibernate.annotations.Cascade; import org.hibernate.annotations.CascadeType; import org.hibernate.annotations.Type; /** * 知识库问题类型字典表类. * */ @Entity @Table(name = "RAM_KNOW_DIC_QUES_KIND") @org.hibernate.annotations.Entity(dynamicInsert=true, dynamicUpdate=true) public class AsseKnowDicQuesKind implements Serializable { /** * 问题类型编码 */ @Id @GeneratedValue(strategy = GenerationType.AUTO) @Column(name="ID") private Integer id; /** * 类型名称 */ @Column(name="QUES_KIND_NAME", length = 20, nullable = false) private String quesKindName; /** * 页面元素代码 */ @Column(name="HTML_CODE", nullable = false) @Type(type="text") private String htmlCode; /** * 关联安全要素集 */ @OneToMany(mappedBy="quesKind") @Cascade(value={CascadeType.SAVE_UPDATE}) private Set<AsseKnowStatSecuElem> asseKnowStatSecuElems; /** * @return quesKindId */ public Integer getId() { return id; } /** * @param dicId * 问题类型编码 */ public void setId(Integer dicId) { this.id = dicId; } /** * @return quesKindName */ public String getQuesKindName() { return quesKindName; } /** * @param queskindName * 问题类型名称 */ public void setQuesKindName(String queskindName) { this.quesKindName = queskindName; } /** * @return htmlCode */ public String getHtmlCode() { return htmlCode; } /** * @param htmlcode * 页面元素代码 */ public void setHtmlCode(String htmlcode) { this.htmlCode = htmlcode; } /** * @return asseKnowStatSecuElems */ public Set<AsseKnowStatSecuElem> getAsseKnowStatSecuElems() { return asseKnowStatSecuElems; } /** * @param asseknowStatSecuElems * 关联安全要素集 */ public void setAsseKnowStatSecuElems(Set<AsseKnowStatSecuElem> asseknowStatSecuElems) { this.asseKnowStatSecuElems = asseknowStatSecuElems; } /** * 比较是否相等 * @param o * 问题类型实例 * @return true/false */ public boolean equals(Object o) { if (!(o instanceof AsseKnowDicQuesKind)) { return false; } AsseKnowDicQuesKind another = (AsseKnowDicQuesKind) o; return new EqualsBuilder().append(id, another.id) .isEquals(); } /** * 获取哈希值 * @return 哈希值 */ public int hashCode() { return new HashCodeBuilder().append(id).hashCode(); } /** * 问题类型属性查看 * @return 属性字符串 */ public String toString() { return new ToStringBuilder(this).append(id).append( quesKindName).append(htmlCode).toString(); } }