@Transient
时间: 2023-10-03 18:07:35 浏览: 169
@Transient注解的作用是在Java的serialization机制中,用于标记某个域不会被序列化保存。当一个对象被序列化时,被标记为@Transient的域的值不会包括在序列化的表示中,而非@Transient标记的域会被序列化保存。
在实体类中,如果使用了@Table注解来指定数据库表,但想要添加一个在表中不存在的字段,可以使用@Transient注解来标记这个属性。@Transient注解表示该属性并非要映射到数据库表中的字段,只是起辅助作用。ORM框架在处理时会忽略这个属性。@Transient注解可以加在属性上,也可以加在get()方法上面。
举个例子,如果一个实体类中有一个职位字段需要映射到数据库表中的字段,可以使用@Column注解来标记该字段。但如果有另一个字段departmentName,在数据库表中没有相应的字段,就可以直接使用@Transient注解,而不再使用@Column注解。
值得注意的是,被@Transient关键字修饰的变量不会被序列化保存,而静态变量无论是否被@Transient修饰,都不能被序列化。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [@Transient注解](https://blog.csdn.net/cqzdmm/article/details/111040966)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *3* [@Transient](https://blog.csdn.net/rongxiang111/article/details/86476028)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文