Spring Boot中计算学生成年年龄的问题
我有一个具有以下属性的学生课程:
@Entity
@Table(name = "students")
@Getter
@Setter
@NoArgsConstructor
public class Student {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id ;
private String name;
private LocalDate dateOfBirth;
private boolean ageMajority;
public Student(String name, LocalDate dateOfBirth) {
this.name = name;
this.dateOfBirth = dateOfBirth;
this.ageMajority = this.isOfLegalAge(dateOfBirth);
}
private boolean isOfLegalAge(LocalDate dateOfBirth) {
Period period = Period.between( dateOfBirth,LocalDate.now());
return period.getYears() >= 18 ;
}
}
我正在使用 PostgreSQL 数据库。 我尝试使用人工智能向我展示的其他几种替代方案,但它们不起作用。
问题是,当在 Spring Boot 中使用 POST 方法传递出生日期(1900-11-25)参数并存储在数据库中时,isOfLegalAge() 函数总是返回 false,除非我使用 PUT 方法改变。
我希望在使用 POST 方法时将ageMajority 属性保存为true。我该如何解决这个问题?
首先,它与'post'或'put'请求无关,request只是一种类型,我需要查看period.getYears()中的相关代码来寻求帮助,或者查看你的post请求和输入请求码,一定有问题