现在做网站怎么赚钱,为古汉字老人做网站,微信文档,锦州seo推广四个常见注解
1、Table
作用#xff1a;建立实体类和数据库表之间的对应关系。
默认规则#xff1a;实体类类名首字母小写作为表名#xff0c;如 Employee - employee 表
用法#xff1a;在 Table 注解的 name 属性中指定目标数据库的表名#xff1b;
案例#…四个常见注解
1、Table
作用建立实体类和数据库表之间的对应关系。
默认规则实体类类名首字母小写作为表名如 Employee - employee 表
用法在 Table 注解的 name 属性中指定目标数据库的表名
案例 2、Column
作用建立实体类字段和数据库表字段之间的对应关系
默认规则实体类字段驼峰式命名数据库表字段使用_ 区分各个单词
用法在 Column 注解的 name 属性中指定目标字段的字段名
案例 3、Id
通用 Mapper 在执行 xxxByPrimaryKey(key) 方法时有两种情况
情况 1没有使用 Id 注解明确指定主键字段
SELECT emp_id,emp_name,emp_salary,emp_age FROM tabple_emp
WHERE emp_id ? AND emp_name ? AND emp_salary ? AND emp_age ?之所以会生成上面的 where 子句是因为通用 Mapper 将实体类的所有字段都拿来放在一起作为联合主键。
情况 2使用Id 注解明确标记和数据库表中主键字段对应的实体类字段。
如 SELECT emp_id,emp_name,emp_salary,emp_age FROM tabple_emp WHERE emp_id ?注意如果是多个字段作为联合主键需要在每个字段上面都加上 Id 注解。
4、GeneratedValue
作用让通用 Mapper 在执行 insert 操作之后将数据库自动生成的主键值回写到实体类对象中。
自增主键用法MySQL
Id
GeneratedValue(strategy GenerationType.IDENTITY)
private Integer empId;序列主键用法Oracle
Id
GeneratedValue(strategy GenerationType.IDENTITY, generatorselect SEQ_ID.nextval from dual)
private Integer empId;5、Transient
一般实体类中字段和数据库表中字段一一对应的但是也有很多情况会在实体类中增加一些额外的属性这种情况需要使用Transient 注解告诉通用 Mapper 这不是表中的字段。
对于类中复杂对象以及 Map、List 等属性不需要配置这个注解。
配置实例
Transient
private String otherThings; //非数据库字段代码举例
import lombok.Data;import javax.persistence.Id;
import javax.persistence.Table;Data
Table(name user)
public class User {Idprivate Integer id;private String name;private Integer age;
}