SysUser.java 3.2 KB
package com.server.shiro.persistent.bean;


import org.hibernate.annotations.GenericGenerator;

import javax.persistence.*;
import java.io.Serializable;
import java.util.Date;
import java.util.Set;

@Entity
@Table(name = "sys_user")
public class SysUser  implements Serializable {

  
  @Id
  @GeneratedValue
  @Column(name = "id")
  private long id;
  
  /**
   * 用户名
   */
  @Column(name = "username")
  private String username;

  /**
   * 真实姓名
   */
  @Column(name = "real_name")
  private String realname;

  /**
   * 手机号
   */
  @Column(name = "phone")
  private String phone;

  /**
   * 密码
   */
  @Column(name = "password")
  private String password;
  
  /**
   * 备注
   */
  @Column(name = "remarks")
  private String remarks;
  
  /**
   * 创建时间
   */
  @Column(name = "create_time")
  private Date createTime;
  
  /**
   * 修改时间
   */
  @Column(name = "update_time")
  private Date updateTime;
  
  /**
   * 是否有效  1有效  2无效
   */
  @Column(name = "status")
  private Long status;

  @ManyToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER)
  @JoinTable(name="sys_user_menus",//中间表的名称
          joinColumns={@JoinColumn(name="sys_user_id",referencedColumnName="id")},//中间表PRODUCT_ID字段关联PRODUCT的ID
          inverseJoinColumns={@JoinColumn(name="menus_id",referencedColumnName="id")})//中间表CATEGORY_ID字段关联CATEGORY的ID
  private Set<SysMenu> menus;

  @ManyToMany(cascade=CascadeType.ALL,fetch=FetchType.EAGER)//级联保存、更新、删除、刷新;延迟加载
  @JoinTable(name = "sys_user_roles",
          joinColumns = { @JoinColumn(name = "sys_user_id",referencedColumnName="id") },
          inverseJoinColumns = {@JoinColumn(name = "roles_id",referencedColumnName="id") })
  private Set<SysRole> roles;

  public long getId() {
    return id;
  }

  public void setId(long id) {
    this.id = id;
  }


  public String getUsername() {
    return username;
  }

  public void setUsername(String username) {
    this.username = username;
  }


  public String getPassword() {
    return password;
  }

  public void setPassword(String password) {
    this.password = password;
  }


  public String getRemarks() {
    return remarks;
  }

  public void setRemarks(String remarks) {
    this.remarks = remarks;
  }


  public Date getCreateTime() {
    return createTime;
  }

  public void setCreateTime(Date createTime) {
    this.createTime = createTime;
  }


  public Date getUpdateTime() {
    return updateTime;
  }

  public void setUpdateTime(Date updateTime) {
    this.updateTime = updateTime;
  }


  public Long getStatus() {
    return status;
  }

  public void setStatus(Long status) {
    this.status = status;
  }

  public Set<SysMenu> getMenus() {
    return menus;
  }

  public void setMenus(Set<SysMenu> menus) {
    this.menus = menus;
  }

  public Set<SysRole> getRoles() {
    return roles;
  }

  public void setRoles(Set<SysRole> roles) {
    this.roles = roles;
  }

  public void setRealname(String realname) {
    this.realname = realname;
  }

  public void setPhone(String phone) {
    this.phone = phone;
  }

  public String getRealname() {
    return realname;
  }

  public String getPhone() {
    return phone;
  }
}