Я начал изучать Spring Boot, я создал две сущности Invoice и YearDate
Когда я пытаюсь выполнить поиск по году (id), в моем запросе журнала я получил null (см. Эту часть log query)
http://localhost:8080/appapi/invoices/search/findByYearId?year=1
from invoice invoice0_ left outer join year_date yeardate1_ on invoice0_.year_id=yeardate1_.id where yeardate1_.id is null limit?
Я использую Lombok также для геттеров и сеттеров
Вот все объекты моего класса, SQL таблицы и интерфейс JpaRepository:
SQL внешний ключ:
KEY `fk_year` (`year_id`),
CONSTRAINT `fk_year` FOREIGN KEY (`year_id`) REFERENCES `YearDate` (`id`)
Класс YearDate:
@Entity
@Table(name="YearDate")
@Data
public class YearDate {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
private Long id;
@Column(name = "year_value")
private String yearValue;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "year")
private Set<Invoice> invoices;
}
Класс счета:
@Entity
@Table(name="invoice")
@Data
public class Invoice {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
private Long id;
@Column(name = "name")
private String name;
@ManyToOne
@JoinColumn(name = "year_id", nullable = false)
private YearDate year;
@Column(name = "description")
private String description;
}
**And The Invoice Interface:**
@CrossOrigin("http://localhost:4200")
public interface InvoiceRepository extends JpaRepository<Invoice, Long> {
Page<Invoice> findByYearId(@RequestParam("year") Long id, Pageable page);
}