Ответ
Помимо Java Core, я освоил следующие технологии и инструменты:
Основные фреймворки и ORM:
- Spring Framework: Spring Boot, Spring MVC, Spring Data, Spring Security.
- Hibernate для работы с базами данных.
Базы данных и SQL:
- Реляционные СУБД: PostgreSQL, MySQL.
- Написание и оптимизация SQL-запросов.
Инструменты и практики:
- Системы сборки: Maven, Gradle.
- Контейнеризация: Docker.
- Система контроля версий: Git.
- Тестирование: JUnit, Mockito.
Дополнительные области:
- Разработка и потребление REST API.
- Основы многопоточности в Java.
- Алгоритмы и структуры данных.
- Паттерны проектирования (Singleton, Factory, Observer).
Пример кода на Spring Boot:
@RestController
@RequestMapping("/api/users")
public class UserController {
private final UserService userService;
@Autowired
public UserController(UserService userService) {
this.userService = userService;
}
@GetMapping("/{id}")
public ResponseEntity<UserDto> getUser(@PathVariable Long id) {
UserDto user = userService.findById(id);
return ResponseEntity.ok(user);
}
}