controller_adjust

Change-Id: Ie136f68887cd547576239ad0ce0c2eaccde730b3
diff --git a/src/main/java/com/example/g8backend/dto/ApiResponse.java b/src/main/java/com/example/g8backend/dto/ApiResponse.java
new file mode 100644
index 0000000..fb6ed0e
--- /dev/null
+++ b/src/main/java/com/example/g8backend/dto/ApiResponse.java
@@ -0,0 +1,33 @@
+package com.example.g8backend.dto;
+
+public class ApiResponse<T> {
+    private int code;
+    private String message;
+    private T data;
+
+    public ApiResponse() {}
+
+    public ApiResponse(int code, String message, T data) {
+        this.code = code;
+        this.message = message;
+        this.data = data;
+    }
+
+    public static <T> ApiResponse<T> success(T data) {
+        return new ApiResponse<>(200, "Success", data);
+    }
+
+    public static <T> ApiResponse<T> success(String message, T data) {
+        return new ApiResponse<>(200, message, data);
+    }
+
+    public static <T> ApiResponse<T> message(String message) {
+        return new ApiResponse<>(200, message, null);
+    }
+
+    public static <T> ApiResponse<T> error(int code, String message) {
+        return new ApiResponse<>(code, message, null);
+    }
+
+    // Getters and Setters 略,也可使用 Lombok 注解
+}
\ No newline at end of file