/
Hipahopa808
/
SpringToDoApp
Обзор
Документация
Войти
/
Hipahopa808
/
SpringToDoApp
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
SpringSetting
src/main/java/com/fedorov/todoapp/controllers/TodoController.java
63 строки
2 KB
Hipahopa808
Add CRUD operations
19 май 2026, 21:54
19 май 2026, 21:54
6617e63
Код
Авторство
О чём код?
package com.fedorov.todoapp.controllers; import com.fedorov.todoapp.model.TodoItem; import com.fedorov.todoapp.repositories.TodoItemRepository; import org.springframework.boot.CommandLineRunner; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.*; import java.util.List; @Controller public class TodoController implements CommandLineRunner { private final TodoItemRepository todoItemRepository; public TodoController(TodoItemRepository todoItemRepository) { this.todoItemRepository = todoItemRepository; } @GetMapping public String index(Model model){ List<TodoItem> allTodos = todoItemRepository.findAll(); model.addAttribute("allTodos", allTodos); model.addAttribute("newTodo", new TodoItem()); return "index"; } @PostMapping("/add") public String add(@ModelAttribute TodoItem todoItem){ todoItemRepository.save(todoItem); return "redirect:/"; } @PostMapping("/delete/{id}") public String delete(@PathVariable("id") Long id){ todoItemRepository.deleteById(id); return "redirect:/"; } @PostMapping("/removeAll") public String removeAll(){ todoItemRepository.deleteAll(); return "redirect:/"; } @PostMapping("/update/{id}") public String updateById(@PathVariable("id") Long id, @RequestParam("title") String title){ TodoItem updatedTodoItem = todoItemRepository.getReferenceById(id); updatedTodoItem.setTitle(title); todoItemRepository.save(updatedTodoItem); return "redirect:/"; } @Override public void run(String... args) throws Exception { todoItemRepository.save(new TodoItem("Задача 1")); todoItemRepository.save(new TodoItem("Задача 2")); } }