相关疑难解决方法(0)

@Transient注释,@ org.springframework.data.annotation.Transient注释,临时关键字和密码存储

目前我正在学习Spring框架,主要关注它的安全模块.我已经看过一些与注册和登录相关的指南.我在User类的密码字段中看到了transient关键字或@Transient注释的常见用法.

我的虚拟应用程序使用Spring Boot + Spring MVC + Spring Security + MySQL.

我知道

Java的transient关键字用于表示字段不是序列化的.

JPA的@Transient注释 ......

...指定属性或字段不是持久的.它用于注释实体类,映射的超类或可嵌入类的属性或字段.

和org.springframework.data.annotation的@Transient批注...

将字段标记为映射框架的瞬态字段.因此,该属性将不会被持久化,也不会被映射框架进一步检查.

在我的MySQL数据库中,我有spring_demo模式,它有3个表:

+-----------------------+
| Tables_in_spring_demo |
+-----------------------+
| role                  |
| user                  |
| user_role             |
+-----------------------+
Run Code Online (Sandbox Code Playgroud)

当我在User类的密码字段中使用transient关键字时,它不会存储在MySQL数据库中.(例如:test01)

mysql> select * from user;
+----+--------+------------------+----------+
| id | active | email            | username |
+----+--------+------------------+----------+
|  1 |      1 | test01@gmail.com | test01   |
+----+--------+------------------+----------+ …
Run Code Online (Sandbox Code Playgroud)

jpa spring-security transient spring-annotations spring-data

14
推荐指数
1
解决办法
2万
查看次数