Pengauditan dengan @CreatedDate
Jejaki penciptaan dan perubahan entiti secara automatik.
Pengauditan dengan @CreatedDate ialah pelajaran Perkhidmatan Mikro dan API REST Spring Boot 4 percuma di CoddyKit. Ini ialah pelajaran 3 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Perkhidmatan Mikro dan API REST Spring Boot 4, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Perkhidmatan Mikro dan API REST Spring Boot 4 merangkumi sejumlah 4 pelajaran.
Apakah Pengauditan JPA
Pengauditan menjejaki secara automatik siapa yang mencipta atau mengubah entiti serta bila perubahan itu berlaku, tanpa kod manual dalam setiap penyimpanan.
Spring Data JPA mengisi medan audit semasa penyisipan dan kemas kini untuk anda.
Mengaktifkan Pengauditan
Tambah @EnableJpaAuditing pada kelas konfigurasi untuk mengaktifkan ciri ini.
@Configuration
@EnableJpaAuditing
public class JpaConfig {
}Mendaftarkan Pendengar
Anotasikan entiti yang diaudit dengan @EntityListeners(AuditingEntityListener.class) supaya panggilan balik dicetuskan.
@Entity
@EntityListeners(AuditingEntityListener.class)
public class Product {
@Id @GeneratedValue
private Long id;
}@CreatedDate
@CreatedDate ditetapkan sekali apabila entiti mula-mula disimpan.
@CreatedDate
private Instant createdAt;@LastModifiedDate
@LastModifiedDate dikemas kini pada setiap penyimpanan, termasuk kemas kini.
@LastModifiedDate
private Instant updatedAt;Entiti Diaudit Lengkap
Menghimpunkan medan cap masa.
@Entity
@EntityListeners(AuditingEntityListener.class)
public class Product {
@Id @GeneratedValue
private Long id;
@CreatedDate
private Instant createdAt;
@LastModifiedDate
private Instant updatedAt;
}Mengaudit Pengguna
@CreatedBy dan @LastModifiedBy merekodkan pihak yang membuat perubahan.
@CreatedBy
private String createdBy;
@LastModifiedBy
private String modifiedBy;AuditorAware
Untuk mengisi medan pengguna, sediakan bean AuditorAware yang mengembalikan prinsipal semasa.
@Bean
public AuditorAware<String> auditorProvider() {
return () -> Optional.of(
SecurityContextHolder.getContext()
.getAuthentication().getName());
}Kelas Asas yang Boleh Digunakan Semula
Letakkan medan audit dalam @MappedSuperclass supaya semua entiti mewarisinya.
@MappedSuperclass
@EntityListeners(AuditingEntityListener.class)
public abstract class Auditable {
@CreatedDate
private Instant createdAt;
@LastModifiedDate
private Instant updatedAt;
}Memilih Jenis Tarikh
Medan audit boleh menggunakan Instant, LocalDateTime atau Long. Konfigurasikan rujukan melalui dateTimeProviderRef jika diperlukan.
Mengesahkan Pengauditan
Pada penyimpanan pertama, createdAt dan updatedAt adalah sama; selepas kemas kini, hanya updatedAt berubah.
Product p = repository.save(new Product());
// createdAt == updatedAt
p.setName("New");
repository.save(p);
// updatedAt is now later than createdAtSemakan Pantas
Uji pemahaman anda tentang pengauditan.
Rumusan
Anda telah mempelajari pengauditan automatik:
@EnableJpaAuditingmengaktifkannya@EntityListeners(AuditingEntityListener.class)pada entiti@CreatedDate/@LastModifiedDateuntuk cap masaAuditorAwaremengisi@CreatedBy
Pelajari Java dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 24
- Pelajaran
- 93
Soalan Lazim
Adakah pelajaran “Pengauditan dengan @CreatedDate” percuma?
Ya — teks penuh “Pengauditan dengan @CreatedDate” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Perkhidmatan Mikro dan API REST Spring Boot 4, tingkat taraf kepada CoddyKit PRO. Kursus Perkhidmatan Mikro dan API REST Spring Boot 4 merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “Pengauditan dengan @CreatedDate”?
Jejaki penciptaan dan perubahan entiti secara automatik. Anda berlatih Perkhidmatan Mikro dan API REST Spring Boot 4 menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Perkhidmatan Mikro dan API REST Spring Boot 4?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Perkhidmatan Mikro dan API REST Spring Boot 4 di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 3 daripada 4.
Berapa lamakah pelajaran “Pengauditan dengan @CreatedDate” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Perkhidmatan Mikro dan API REST Spring Boot 4 ini?
Ya. Setiap pelajaran Perkhidmatan Mikro dan API REST Spring Boot 4 menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Pertanyaan Dinamik dengan Spesifikasi
- Unjuran dan DTO
- Pengauditan dengan @CreatedDate
- Penomboran dan Pengisihan