From 3928c008c75776e0f59f258486f0a997dabe42d4 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Thu, 12 Feb 2026 10:31:14 +0000
Subject: [PATCH 1/5] Initial plan
From 032f2cdf6720e206d40ad4abf5b81fb079e81696 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Thu, 12 Feb 2026 10:35:30 +0000
Subject: [PATCH 2/5] Upgrade Java to 21 and Spring Boot to 3.3.13 using
OpenRewrite
---
pom.xml | 8 ++++----
.../com/photoalbum/controller/DetailController.java | 2 +-
.../java/com/photoalbum/controller/HomeController.java | 2 +-
.../com/photoalbum/controller/PhotoFileController.java | 2 +-
src/main/java/com/photoalbum/model/Photo.java | 10 +++++-----
.../com/photoalbum/service/impl/PhotoServiceImpl.java | 8 ++++----
6 files changed, 16 insertions(+), 16 deletions(-)
diff --git a/pom.xml b/pom.xml
index 216b79d5..966e621d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -8,7 +8,7 @@
org.springframework.boot
spring-boot-starter-parent
- 2.7.18
+ 3.3.13
@@ -21,9 +21,9 @@
A simple photo storage and gallery application built with Spring Boot and Oracle DB
- 1.8
- 8
- 8
+ 21
+ 21
+ 21
UTF-8
diff --git a/src/main/java/com/photoalbum/controller/DetailController.java b/src/main/java/com/photoalbum/controller/DetailController.java
index d138ef95..1c091add 100644
--- a/src/main/java/com/photoalbum/controller/DetailController.java
+++ b/src/main/java/com/photoalbum/controller/DetailController.java
@@ -37,7 +37,7 @@ public String detail(@PathVariable String id, Model model) {
try {
Optional photoOpt = photoService.getPhotoById(id);
- if (!photoOpt.isPresent()) {
+ if (photoOpt.isEmpty()) {
return "redirect:/";
}
diff --git a/src/main/java/com/photoalbum/controller/HomeController.java b/src/main/java/com/photoalbum/controller/HomeController.java
index d9905d97..22d52509 100644
--- a/src/main/java/com/photoalbum/controller/HomeController.java
+++ b/src/main/java/com/photoalbum/controller/HomeController.java
@@ -54,7 +54,7 @@ public String index(Model model) {
*/
@PostMapping("/upload")
@ResponseBody
- public ResponseEntity