Junior — Middle
Java Spring'da @ExceptionHandler annotatsiyasidan nima uchun foydalanilishini tushuntirib bera olasizmi?
sobes.tech AI
AIdan javob
Java Spring'da @ExceptionHandler anotatsiyasi, nazorat qiluvchilarda yuzaga keladigan istisnalarni boshqarish uchun ishlatiladi. U ma'lum bir turdagi istisno yuzaga kelganda chaqiriladigan metodni belgilash imkonini beradi, bu esa xatoliklarni markaziy tarzda boshqarishga va mijozga tushunarli javoblarni qaytarishga yordam beradi.
Foydalanish misoli:
@Controller
public class MyController {
@GetMapping("/example")
public String example() {
if (true) {
throw new IllegalArgumentException("Noto'g'ri argument");
}
return "ok";
}
@ExceptionHandler(IllegalArgumentException.class)
public ResponseEntity<String> handleIllegalArgument(IllegalArgumentException ex) {
return ResponseEntity
.status(HttpStatus.BAD_REQUEST)
.body("Xato: " + ex.getMessage());
}
}
Ushbu misolda, agar example metodida IllegalArgumentException chiqarilsa, @ExceptionHandler bilan belgilangan metod bu istisnani ushlaydi va mijozga 400 kodli va xato haqida xabar bilan javob qaytaradi.