我在JavaSpring中有一个API,我想知道如何通过用户ID获取所有“财务”,我真的陷入了困境,我想将一个正文发送到发送UserId的API并获取与用户匹配的所有财务
@Entity
@Table(name = "finance")
public class Finance {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
@ManyToOne
@JoinColumn(name = "user_id", nullable = false)
private User user;
@Column(nullable = false)
private String title;
private String description;
@Column(nullable = false)
private String date;
@Column(nullable = false)
private Integer value;
我的代码现在是这样的,我不知道我在做什么,我尝试创建存储库只是为了发现我不知道这样做
服务:
public ResponseEntity<Object> GetFinanceByUserId(Integer userId) {
List<Finance> userFinances = financeRepository.findByUserId(userId);
return new ResponseEntity<>(userFinances, HttpStatus.OK);
}
存储库:
public interface FinanceRepository extends JpaRepository<Finance, Integer> {
List<Finance> findByUserId(Integer userId);
}
您可以像下面这样更改实体
实体
@Column(name = "user_id", nullable = false)
private Long userId;
@ManyToOne(fetch = FetchType.LAZY, optional=false)
@JoinColumn(name = "user_id", insertable = false, updatable = false, nullable = false)
private User user;
存储库
public interface FinanceRepository extends JpaRepository<Finance, Integer> {
List<Finance> findByUserId(Integer userId);
}