Spring Boot ialah rangka kerja yang memudahkan pembangunan aplikasi sedia pengeluaran menggunakan rangka kerja Spring. Ia menyediakan satu set alat dan konvensyen untuk membantu anda membina aplikasi dengan cepat dan cekap. Dengan Spring Boot, anda boleh membuat aplikasi gred pengeluaran yang berdiri sendiri dengan mudah dengan konfigurasi minimum.
Panduan ini akan memandu anda membuat aplikasi CRUD Pengguna (Buat, Baca, Kemas Kini, Padam) yang mudah menggunakan Spring Boot. Kami juga akan menyimpan aplikasi dengan Docker untuk memastikan konsistensi merentas persekitaran yang berbeza.
Pastikan anda telah memasang yang berikut:
Gunakan Spring Initializr untuk menjana projek Spring Boot baharu:
Klik "Jana" untuk memuat turun projek, kemudian nyahzipnya.
cd user-crud
Buat kelas Java baharu bernama User.java di dalam src/main/java/com/example/usercrud:
package com.example.usercrud; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; @Entity public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String name; private String email; // Getters and Setters public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } }
Buat antara muka Java baharu bernama UserRepository.java di dalam src/main/java/com/example/usercrud:
package com.example.usercrud; import org.springframework.data.jpa.repository.JpaRepository; public interface UserRepository extends JpaRepository<User, Long> { }
Buat kelas Java baharu bernama UserController.java di dalam src/main/java/com/example/usercrud:
package com.example.usercrud; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.Optional; @RestController @RequestMapping("/api/users") public class UserController { @Autowired private UserRepository userRepository; @PostMapping public ResponseEntity<User> createUser(@RequestBody User user) { User savedUser = userRepository.save(user); return new ResponseEntity<>(savedUser, HttpStatus.CREATED); } @GetMapping public List<User> getAllUsers() { return userRepository.findAll(); } @GetMapping("/{id}") public ResponseEntity<User> getUserById(@PathVariable Long id) { Optional<User> user = userRepository.findById(id); return user.map(ResponseEntity::ok).orElseGet(() -> ResponseEntity.notFound().build()); } @PutMapping("/{id}") public ResponseEntity<User> updateUser(@PathVariable Long id, @RequestBody User user) { if (!userRepository.existsById(id)) { return ResponseEntity.notFound().build(); } user.setId(id); User updatedUser = userRepository.save(user); return ResponseEntity.ok(updatedUser); } @DeleteMapping("/{id}") public ResponseEntity<Void> deleteUser(@PathVariable Long id) { if (!userRepository.existsById(id)) { return ResponseEntity.notFound().build(); } userRepository.deleteById(id); return ResponseEntity.noContent().build(); } }
Buat fail bernama Dockerfile dalam direktori akar projek anda dengan kandungan berikut:
# Use a base image with Java 11 FROM openjdk:11-jdk-slim # Set the working directory WORKDIR /app # Copy the jar file from the target directory COPY target/user-crud-0.0.1-SNAPSHOT.jar app.jar # Expose port 8080 EXPOSE 8080 # Run the application ENTRYPOINT ["java", "-jar", "/app/app.jar"]
Pertama, bungkus aplikasi anda dengan Maven:
./mvnw clean package
Kemudian bina imej Docker:
docker build -t user-crud .
Gunakan arahan berikut untuk menjalankan bekas Docker anda:
docker run -p 8080:8080 user-crud
Lawati http://localhost:8080/api/users untuk memastikan aplikasi berjalan dengan betul dalam bekas Docker. Anda boleh menggunakan alatan seperti curl atau Postman untuk menguji titik akhir CRUD.
Anda telah berjaya mencipta aplikasi CRUD Pengguna yang mudah dengan Spring Boot, menyimpannya menggunakan Docker dan mengesahkan operasinya. Persediaan ini membolehkan anda menggunakan dan mengurus aplikasi anda secara konsisten merentas persekitaran yang berbeza, anda boleh melanjutkan contoh ini dengan ciri tambahan atau menyepadukannya ke dalam sistem yang lebih besar.
Jangan ragu untuk menghubungi soalan anda... Selamat Mengekod!
Untuk maklumat lanjut, rujuk:
Atas ialah kandungan terperinci Membina Aplikasi CRUD Pengguna dengan Spring Boot dan Docker. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!