@Transient 是属性或方法级别的注解,该注解没有参数,用于标注属性是瞬态而非持久的。

1. 示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@Entity(name = "person")
public class Person implements Serializable {
@Id
@GeneratedValue
private Long id;
private String name;
@Transient
private String mail;
// getters and setters
}

产生的 DDL 语句(MySQL):

1
2
3
4
5
CREATE TABLE `person` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`name` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;