@Basic

@Basic

@sunRainAmazing

hibernate jpa注解 

@Basic  
 此注解是默认Entity类的属性的默认注解。 
 即普通字段未加@Column注解,也会将其属性作为一个数据库的对应表的字段。 


有两个属性值
fetch       懒加载方式 默认为及时加载 EAGER 
optional     是否为空 默认为空


对数据库列的最简单的映射。 
基本注释可以应用于任何以下类型的持久性属性或实例变量:
Java原始类型,原始类型的包装器,
String, 

java.math.BigInteger,java.math.BigDecimal, 

java.util.Date,java.util.Calendar, 

java.sql.Date,java.sql.Time,java.sql.Timestamp, 

byte [],Byte [],char [],Character [], 

枚举和任何其他实现java的类型。实现java.io.Serializable。



对于持久化字段和这些类型的属性,对Basic注释的使用是可选的。 
 如果没有为这样的字段或属性指定基本注释,则将使用“基本”注释的默认值。 


两个属性
fetch -----FetchType    
          (可选)定义字段或属性的值是否应该被延迟加载,或者必须被强制提取。
    定义从数据库中获取数据的策略。
    如果未指定,则默认为EAGER。-- 及时加载
    LAZY:定义数据可以被懒加载。 


optional ---- boolean    
          (可选)定义字段或属性的值是否为空。如果未指定,则默认为true。 



@Basic
private String name;


@Basic(fetch=LAZY)
private String getName() { return name; } 


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
/** * 注册 * @param user * @return / @PostMapping("register") public Map<String, Object> signUp(@RequestBody User user) { // 查询用户 Map<String, String> query = new HashMap<>(); query.put("username",user.getUsername()); List list = service.select(query, new HashMap<>()).getResultList(); if (list.size()>0){ return error(30000, "用户已存在"); } user.setUserId(null); user.setPassword(service.encryption(user.getPassword())); service.save(user); return success(1); } /* * 用户ID:[0,8388607]用户获取其他与用户相关的数据 / @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "user_id") private Integer userId; /* * 账户状态:0,10 / @Basic @Column(name = "state") private Integer state; /* * 所在用户组:[0,32767]决定用户身份和权限 / @Basic @Column(name = "user_group") private String userGroup; /* * 上次登录时间: / @Basic @Column(name = "login_time") private Timestamp loginTime; /* * 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 / @Basic @Column(name = "phone") private String phone; /* * 手机认证:0,1 / @Basic @Column(name = "phone_state") private Integer phoneState; /* * 用户名:[0,16]用户登录时所用的账户名称 / @Basic @Column(name = "username") private String username; /* * 昵称:[0,16] / @Basic @Column(name = "nickname") private String nickname; /* * 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 / @Basic @Column(name = "password") private String password; /* * 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 / @Basic @Column(name = "email") private String email; /* * 邮箱认证:0,1 / @Basic @Column(name = "email_state") private Integer emailState; /* * 头像地址:[0,255] / @Basic @Column(name = "avatar") private String avatar; /* * 创建时间: */ @Basic @Column(name = "create_time") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Timestamp createTime; @Basic @Transient private String code; }
06-12

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值