今天我在写代码,突然发现JavaBean实体类的属性上有个@Transient注解,我简单的查了一下作用,其实意思就是你数据库不存在此字段,但你还想使用此字段才用这个注解。
比如你Mybatis中resultMap是这么写的:
<resultMap type="TYcRedflag" id="TYcRedflagResult">
<result property="id" column="id" />
<result property="type" column="type" />
<result property="title" column="title" />
<result property="deptNames" column="deptNames" />
</resultMap>
前三个字段我数据库都有,但是deptNames是数据库没有的,我是用了别名方式as deptNames来返回数据。
所以在实体类中,我要在deptNames属性上加@Transient注解:
@Transient
private String deptNames;
所以@Transient就是在不需要某个属性加到数据库中,并且只是作为一个临时变量的时候使用,比如一些多表查询等等,这样也不用多写一些实体类,非常方便。