forked from admin/springboot-demo
feat(v1): unify API response, validation, exception handling and tests
This commit is contained in:
22
src/main/java/com/example/demo/common/ApiResponse.java
Normal file
22
src/main/java/com/example/demo/common/ApiResponse.java
Normal file
@@ -0,0 +1,22 @@
|
||||
package com.example.demo.common;
|
||||
|
||||
import java.time.Instant;
|
||||
|
||||
public record ApiResponse<T>(
|
||||
int code,
|
||||
String message,
|
||||
T data,
|
||||
Instant timestamp
|
||||
) {
|
||||
public static <T> ApiResponse<T> ok(T data) {
|
||||
return new ApiResponse<>(0, "success", data, Instant.now());
|
||||
}
|
||||
|
||||
public static <T> ApiResponse<T> ok(String message, T data) {
|
||||
return new ApiResponse<>(0, message, data, Instant.now());
|
||||
}
|
||||
|
||||
public static ApiResponse<Void> fail(int code, String message) {
|
||||
return new ApiResponse<>(code, message, null, Instant.now());
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user