Spring MVC CRUD Örneği

sametklou

Spring MVC CRUD Örneği

Spring MVC (Model-View-Controller) CRUD (Create, Read, Update, Delete) örneklerini içeren bu makalede, Spring framework'ü kullanarak veritabanı işlemlerini nasıl gerçekleştireceğinizi adım adım öğreneceksiniz.

Proje Yapısı

Öncelikle, proje yapısını oluşturmak için Maven veya Gradle gibi bir yapılandırma aracı kullanabilirsiniz. Bir Spring projesi oluşturduktan sonra, MVC CRUD işlemlerini gerçekleştireceğimiz Controller, Service ve Repository sınıflarını oluşturmalısınız.

1. Controller Sınıfı

@RestController
@RequestMapping("/api/users")
public class UserController {

    @Autowired
    private UserService userService;

    @GetMapping
    public List<User> getAllUsers() {
        return userService.getAllUsers();
    }

    @GetMapping("/{id}")
    public User getUserById(@PathVariable Long id) {
        return userService.getUserById(id);
    }

    @PostMapping
    public User createUser(@RequestBody User user) {
        return userService.createUser(user);
    }

    @PutMapping("/{id}")
    public User updateUser(@PathVariable Long id, @RequestBody User user) {
        return userService.updateUser(id, user);
    }

    @DeleteMapping("/{id}")
    public void deleteUser(@PathVariable Long id) {
        userService.deleteUser(id);
    }
}

2. Service Sınıfı

@Service
public class UserServiceImpl implements UserService {

    @Autowired
    private UserRepository userRepository;

    @Override
    public List<User> getAllUsers() {
        return userRepository.findAll();
    }

    @Override
    public User getUserById(Long id) {
        return userRepository.findById(id).orElse(null);
    }

    @Override
    public User createUser(User user) {
        return userRepository.save(user);
    }

    @Override
    public User updateUser(Long id, User user) {
        if (userRepository.existsById(id)) {
            user.setId(id);
            return userRepository.save(user);
        }
        return null;
    }

    @Override
    public void deleteUser(Long id) {
        userRepository.deleteById(id);
    }
}

3. Repository Sınıfı

@Repository
public interface UserRepository extends JpaRepository<User, Long> {

}

Bu adımları takip ederek, Spring framework'ü kullanarak basit bir MVC CRUD örneği oluşturabilirsiniz. Bu örnek size başlangıç seviyesinde Spring uygulamaları geliştirmeyi öğretirken, aynı zamanda CRUD işlemlerinin nasıl gerçekleştirileceğini de göstermektedir. Uygulamanızı daha da geliştirmek için farklı özellikler ekleyebilir ve farklı HTTP isteklerini yönetebilirsiniz.

Sonuç

Spring MVC CRUD örneği sayesinde, Spring framework'ü kullanarak temel veritabanı işlemlerini gerçekleştirmeyi öğrendiniz. Bu örnek, ileri düzey Spring uygulamaları geliştirmek için önemli bir adım olabilir. Ayrıca, Spring'in MVC mimarisini, RESTful servislerin nasıl oluşturulabileceğini ve veritabanı işlemlerinin nasıl yapılabileceğini anlamak için de harika bir başlangıç noktası olabilir.