[英]How to make a custom method in JpaRepository from Spring Data JPA?
我正在使用来自 Spring 数据 JPA 的 JpaRepository 来调用 MySQL 数据库。 我知道我不需要为 findById、save 等添加方法,因为它们是由 Spring 实现的,但我想添加一个方法: findByAccountNumber()
,但我不知道该怎么做。
我试图以这种方式做,但它不工作:
@Repository
public interface AccountRepository extends JpaRepository<Account, Long> {
Account findByAccountNumber(String accountNumber);
}
帐户 class:
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Data
@Entity
@Table(name = "account")
public class Account {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "accountId")
private Long accountId;
@Column(name = "accountNumber")
private String accountNumber;
@Column(name = "currentBalance")
private BigDecimal currentBalance;
}
因此,当我调用accountRepository.findByAccountNumber(accountNumber)
时,我收到 null。
CREATE TABLE `account` (
`accountId` bigint(19) NOT NULL AUTO_INCREMENT,
`accountNumber` varchar(100) NOT NULL,
`currentBalance` decimal(10,5) NOT NULL,
PRIMARY KEY (`accountId`)
)
我该怎么做这个方法? 谢谢!
也许您需要添加org.springframework.data.repository.query.Param注释。
Account findByAccountNumber(@Param("accountNumber") String accountNumber);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.