nbr*_*bro 12 java spring hibernate spring-repositories
我有两个实体,一个用户和一个注册用户.
注册用户具有user类型的字段.我想在Spring注册用户实体的数据存储库中有一个方法,通过连接到注册用户的用户的用户名搜索所有注册用户.
因此,这是具有关联用户字段的注册用户实体:
@Entity
public class RegisteredUser implements Serializable {
...
@OneToOne
@JoinColumn(name = "USERNAME_FK")
private User user;
...
}
Run Code Online (Sandbox Code Playgroud)
这是一个用户名:
@Entity
public class User implements Serializable {
...
@Id
@Column(nullable = false)
protected String username;
...
}
Run Code Online (Sandbox Code Playgroud)
Ily*_*lya 14
Spring Data(至少1.12.x版本)使用PropertyPath#from方法为从方法名称构造的谓词提取属性的路径.根据消息来源,它使用下划线作为"字段分隔符".所以第一个变体如下
public interface RegisteredUserRepository extends CrudRepository<RegisteredUser,String> {
List<RegisteredUser> findRegisteredUserByUser_Username(String username);
}
Run Code Online (Sandbox Code Playgroud)
如果找不到整个字段名称,还有一些代码将大写字符作为字段分隔符处理.所以,如果你没有第二个varian 的userUsername字段RegisteredUser
public interface RegisteredUserRepository extends CrudRepository<RegisteredUser,String> {
List<RegisteredUser> findRegisteredUserByUserUsername(String username);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16678 次 |
| 最近记录: |