/
ilgizok
/
MyLibService
Обзор
Документация
Войти
/
ilgizok
/
MyLibService
Код
Запросы
1
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
Test
src/main/java/com/example/mylib/entity/Author.java
62 строки
2 KB
ilgiz
add
20 апр 2025, 01:03
20 апр 2025, 01:03
981190d
Код
Авторство
О чём код?
package com.example.mylib.entity; import com.fasterxml.jackson.annotation.JsonAutoDetect; import com.fasterxml.jackson.annotation.JsonBackReference; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonProperty; import jakarta.persistence.*; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import org.hibernate.annotations.CreationTimestamp; import org.hibernate.annotations.UpdateTimestamp; import java.time.LocalDate; import java.time.LocalDateTime; import java.util.HashSet; import java.util.Set; @Entity @Table(name = "authors") @Data @NoArgsConstructor @AllArgsConstructor @Builder @JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.ANY) public class Author { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "author_id") private Long id; @Column(name = "external_api_id", length = 100) private String externalApiId; @Column(nullable = false, length = 100) private String name; @Column(columnDefinition = "TEXT") private String biography; @Column(name = "birth_date") private LocalDate birthDate; @Column(name = "death_date") private LocalDate deathDate; @Column(name = "image_url", length = 255) private String imageUrl; @CreationTimestamp @Column(name = "created_at", updatable = false) private LocalDateTime createdAt; @UpdateTimestamp @Column(name = "updated_at") private LocalDateTime updatedAt; @ManyToMany(mappedBy = "authors") @JsonBackReference private Set<Book> books = new HashSet<>(); }