diff --git a/pom.xml b/pom.xml
index 65db1ed..05e4c21 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
     <parent>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-parent</artifactId>
-        <version>2.7.12</version>
+        <version>3.1.4</version>
         <relativePath/> <!-- lookup parent from repository -->
     </parent>
 
@@ -27,7 +27,7 @@
         <javax-activation.version>1.1.1</javax-activation.version>
         <glassfish-jaxb.version>2.3.3</glassfish-jaxb.version>
         <log4j2.version>2.15.0</log4j2.version>
-        <javax-jaxb.version>2.3.0</javax-jaxb.version>
+        <jakarta-jaxb.version>2.3.0</jakarta-jaxb.version>
     </properties>
 
     <dependencies>
@@ -37,9 +37,8 @@
         </dependency>
 
         <dependency>
-            <groupId>mysql</groupId>
-            <artifactId>mysql-connector-java</artifactId>
-            <version>8.0.31</version>
+            <groupId>com.mysql</groupId>
+            <artifactId>mysql-connector-j</artifactId>
         </dependency>
 
         <dependency>
@@ -112,10 +111,10 @@
             <version>${aliyun-oss.version}</version>
         </dependency>
 
-        <dependency>
-            <groupId>javax.xml.bind</groupId>
-            <artifactId>jaxb-api</artifactId>
-        </dependency>
+<!--        <dependency>-->
+<!--            <groupId>jakarta.xml.bind</groupId>-->
+<!--            <artifactId>jaxb-api</artifactId>-->
+<!--        </dependency>-->
         <dependency>
             <groupId>javax.activation</groupId>
             <artifactId>activation</artifactId>
diff --git a/src/main/java/com/dji/sample/component/ApplicationBootInitial.java b/src/main/java/com/dji/sample/component/ApplicationBootInitial.java
index 5b1573a..37b345e 100644
--- a/src/main/java/com/dji/sample/component/ApplicationBootInitial.java
+++ b/src/main/java/com/dji/sample/component/ApplicationBootInitial.java
@@ -11,7 +11,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.CommandLineRunner;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 import java.util.Optional;
 
 /**
diff --git a/src/main/java/com/dji/sample/component/AuthInterceptor.java b/src/main/java/com/dji/sample/component/AuthInterceptor.java
index 9933466..4cd0f37 100644
--- a/src/main/java/com/dji/sample/component/AuthInterceptor.java
+++ b/src/main/java/com/dji/sample/component/AuthInterceptor.java
@@ -11,8 +11,8 @@ import org.springframework.util.StringUtils;
 import org.springframework.web.servlet.HandlerInterceptor;
 import org.springframework.web.servlet.ModelAndView;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.util.Optional;
 
 @Slf4j
diff --git a/src/main/java/com/dji/sample/component/CorsFilter.java b/src/main/java/com/dji/sample/component/CorsFilter.java
index a4c245f..af3d826 100644
--- a/src/main/java/com/dji/sample/component/CorsFilter.java
+++ b/src/main/java/com/dji/sample/component/CorsFilter.java
@@ -2,9 +2,9 @@ package com.dji.sample.component;
 
 import org.springframework.stereotype.Component;
 
-import javax.servlet.*;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.*;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 
 import static com.dji.sample.component.AuthInterceptor.PARAM_TOKEN;
diff --git a/src/main/java/com/dji/sample/component/oss/service/impl/AmazonS3ServiceImpl.java b/src/main/java/com/dji/sample/component/oss/service/impl/AmazonS3ServiceImpl.java
index 10e109a..165950f 100644
--- a/src/main/java/com/dji/sample/component/oss/service/impl/AmazonS3ServiceImpl.java
+++ b/src/main/java/com/dji/sample/component/oss/service/impl/AmazonS3ServiceImpl.java
@@ -19,7 +19,7 @@ import com.dji.sdk.cloudapi.storage.OssTypeEnum;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
 import java.io.InputStream;
 import java.net.URL;
 import java.util.ArrayList;
diff --git a/src/main/java/com/dji/sample/component/websocket/config/AuthPrincipalHandler.java b/src/main/java/com/dji/sample/component/websocket/config/AuthPrincipalHandler.java
index 05fbd2d..7d04a1f 100644
--- a/src/main/java/com/dji/sample/component/websocket/config/AuthPrincipalHandler.java
+++ b/src/main/java/com/dji/sample/component/websocket/config/AuthPrincipalHandler.java
@@ -11,7 +11,7 @@ import org.springframework.util.StringUtils;
 import org.springframework.web.socket.WebSocketHandler;
 import org.springframework.web.socket.server.support.DefaultHandshakeHandler;
 
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
 import java.security.Principal;
 import java.util.Map;
 import java.util.Optional;
diff --git a/src/main/java/com/dji/sample/control/controller/DockController.java b/src/main/java/com/dji/sample/control/controller/DockController.java
index 3146d9d..2d91e44 100644
--- a/src/main/java/com/dji/sample/control/controller/DockController.java
+++ b/src/main/java/com/dji/sample/control/controller/DockController.java
@@ -9,7 +9,7 @@ import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
-import javax.validation.Valid;
+import jakarta.validation.Valid;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sample/control/controller/DrcController.java b/src/main/java/com/dji/sample/control/controller/DrcController.java
index f40670c..cf7f563 100644
--- a/src/main/java/com/dji/sample/control/controller/DrcController.java
+++ b/src/main/java/com/dji/sample/control/controller/DrcController.java
@@ -11,8 +11,8 @@ import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
 
 import static com.dji.sample.component.AuthInterceptor.TOKEN_CLAIM;
 
diff --git a/src/main/java/com/dji/sample/control/model/param/DrcModeParam.java b/src/main/java/com/dji/sample/control/model/param/DrcModeParam.java
index d483da1..ae31f58 100644
--- a/src/main/java/com/dji/sample/control/model/param/DrcModeParam.java
+++ b/src/main/java/com/dji/sample/control/model/param/DrcModeParam.java
@@ -7,8 +7,8 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 import org.hibernate.validator.constraints.Range;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotBlank;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotBlank;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sample/control/model/param/DronePayloadParam.java b/src/main/java/com/dji/sample/control/model/param/DronePayloadParam.java
index de9aa21..ae77c9c 100644
--- a/src/main/java/com/dji/sample/control/model/param/DronePayloadParam.java
+++ b/src/main/java/com/dji/sample/control/model/param/DronePayloadParam.java
@@ -6,8 +6,8 @@ import com.dji.sdk.cloudapi.device.CameraModeEnum;
 import lombok.Data;
 import org.hibernate.validator.constraints.Range;
 
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sample/control/model/param/FlyToPointParam.java b/src/main/java/com/dji/sample/control/model/param/FlyToPointParam.java
index d003c67..315f82c 100644
--- a/src/main/java/com/dji/sample/control/model/param/FlyToPointParam.java
+++ b/src/main/java/com/dji/sample/control/model/param/FlyToPointParam.java
@@ -6,9 +6,9 @@ import lombok.Data;
 import lombok.NoArgsConstructor;
 import org.hibernate.validator.constraints.Range;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Size;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Size;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sample/control/model/param/PayloadCommandsParam.java b/src/main/java/com/dji/sample/control/model/param/PayloadCommandsParam.java
index f5c4a6e..9005a9d 100644
--- a/src/main/java/com/dji/sample/control/model/param/PayloadCommandsParam.java
+++ b/src/main/java/com/dji/sample/control/model/param/PayloadCommandsParam.java
@@ -3,8 +3,8 @@ package com.dji.sample.control.model.param;
 import com.dji.sample.control.model.enums.PayloadCommandsEnum;
 import lombok.Data;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sample/control/model/param/RemoteDebugParam.java b/src/main/java/com/dji/sample/control/model/param/RemoteDebugParam.java
index 8678d3a..154f2f8 100644
--- a/src/main/java/com/dji/sample/control/model/param/RemoteDebugParam.java
+++ b/src/main/java/com/dji/sample/control/model/param/RemoteDebugParam.java
@@ -2,7 +2,7 @@ package com.dji.sample.control.model.param;
 
 import lombok.Data;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sample/control/model/param/TakeoffToPointParam.java b/src/main/java/com/dji/sample/control/model/param/TakeoffToPointParam.java
index d2e79fc..056542f 100644
--- a/src/main/java/com/dji/sample/control/model/param/TakeoffToPointParam.java
+++ b/src/main/java/com/dji/sample/control/model/param/TakeoffToPointParam.java
@@ -8,9 +8,9 @@ import com.dji.sdk.cloudapi.wayline.RthModeEnum;
 import lombok.Data;
 import org.hibernate.validator.constraints.Range;
 
-import javax.validation.constraints.Max;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.Max;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sample/manage/controller/DeviceFirmwareController.java b/src/main/java/com/dji/sample/manage/controller/DeviceFirmwareController.java
index 6425bbb..1345028 100644
--- a/src/main/java/com/dji/sample/manage/controller/DeviceFirmwareController.java
+++ b/src/main/java/com/dji/sample/manage/controller/DeviceFirmwareController.java
@@ -15,9 +15,9 @@ import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 import java.util.List;
 import java.util.Optional;
 import java.util.stream.Collectors;
diff --git a/src/main/java/com/dji/sample/manage/controller/DeviceLogsController.java b/src/main/java/com/dji/sample/manage/controller/DeviceLogsController.java
index 3e08d53..18f3874 100644
--- a/src/main/java/com/dji/sample/manage/controller/DeviceLogsController.java
+++ b/src/main/java/com/dji/sample/manage/controller/DeviceLogsController.java
@@ -13,8 +13,8 @@ import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.net.URL;
 
 import static com.dji.sample.component.AuthInterceptor.TOKEN_CLAIM;
diff --git a/src/main/java/com/dji/sample/manage/controller/LiveStreamController.java b/src/main/java/com/dji/sample/manage/controller/LiveStreamController.java
index 27f1a64..71ea56b 100644
--- a/src/main/java/com/dji/sample/manage/controller/LiveStreamController.java
+++ b/src/main/java/com/dji/sample/manage/controller/LiveStreamController.java
@@ -10,7 +10,7 @@ import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
 import java.util.List;
 
 import static com.dji.sample.component.AuthInterceptor.TOKEN_CLAIM;
diff --git a/src/main/java/com/dji/sample/manage/controller/LoginController.java b/src/main/java/com/dji/sample/manage/controller/LoginController.java
index 9572dbb..e74acd4 100644
--- a/src/main/java/com/dji/sample/manage/controller/LoginController.java
+++ b/src/main/java/com/dji/sample/manage/controller/LoginController.java
@@ -12,8 +12,8 @@ import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.util.Optional;
 
 import static com.dji.sample.component.AuthInterceptor.PARAM_TOKEN;
diff --git a/src/main/java/com/dji/sample/manage/controller/TopologyController.java b/src/main/java/com/dji/sample/manage/controller/TopologyController.java
index 10908d2..15d2339 100644
--- a/src/main/java/com/dji/sample/manage/controller/TopologyController.java
+++ b/src/main/java/com/dji/sample/manage/controller/TopologyController.java
@@ -8,8 +8,8 @@ import com.dji.sdk.common.HttpResultResponse;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RestController;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sample/manage/controller/UserController.java b/src/main/java/com/dji/sample/manage/controller/UserController.java
index 5536948..2706f8f 100644
--- a/src/main/java/com/dji/sample/manage/controller/UserController.java
+++ b/src/main/java/com/dji/sample/manage/controller/UserController.java
@@ -8,7 +8,7 @@ import com.dji.sdk.common.PaginationData;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
 
 import static com.dji.sample.component.AuthInterceptor.TOKEN_CLAIM;
 
diff --git a/src/main/java/com/dji/sample/manage/controller/WorkspaceController.java b/src/main/java/com/dji/sample/manage/controller/WorkspaceController.java
index 80110ac..d1e2b5e 100644
--- a/src/main/java/com/dji/sample/manage/controller/WorkspaceController.java
+++ b/src/main/java/com/dji/sample/manage/controller/WorkspaceController.java
@@ -9,7 +9,7 @@ import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
-import javax.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletRequest;
 import java.util.Optional;
 
 import static com.dji.sample.component.AuthInterceptor.TOKEN_CLAIM;
diff --git a/src/main/java/com/dji/sample/manage/model/common/HmsJsonUtil.java b/src/main/java/com/dji/sample/manage/model/common/HmsJsonUtil.java
index fbfe916..83578f0 100644
--- a/src/main/java/com/dji/sample/manage/model/common/HmsJsonUtil.java
+++ b/src/main/java/com/dji/sample/manage/model/common/HmsJsonUtil.java
@@ -7,7 +7,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.core.io.ClassPathResource;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.PostConstruct;
+import jakarta.annotation.PostConstruct;
 import java.io.IOException;
 import java.io.InputStream;
 
diff --git a/src/main/java/com/dji/sample/manage/model/param/DeviceFirmwareQueryParam.java b/src/main/java/com/dji/sample/manage/model/param/DeviceFirmwareQueryParam.java
index ffcc8fb..0d0963f 100644
--- a/src/main/java/com/dji/sample/manage/model/param/DeviceFirmwareQueryParam.java
+++ b/src/main/java/com/dji/sample/manage/model/param/DeviceFirmwareQueryParam.java
@@ -6,7 +6,7 @@ import lombok.Builder;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sample/manage/model/param/DeviceFirmwareUpdateParam.java b/src/main/java/com/dji/sample/manage/model/param/DeviceFirmwareUpdateParam.java
index 45c357d..f105dd6 100644
--- a/src/main/java/com/dji/sample/manage/model/param/DeviceFirmwareUpdateParam.java
+++ b/src/main/java/com/dji/sample/manage/model/param/DeviceFirmwareUpdateParam.java
@@ -2,7 +2,7 @@ package com.dji.sample.manage.model.param;
 
 import lombok.Data;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sample/manage/model/param/DeviceFirmwareUploadParam.java b/src/main/java/com/dji/sample/manage/model/param/DeviceFirmwareUploadParam.java
index deeb67f..c8bb330 100644
--- a/src/main/java/com/dji/sample/manage/model/param/DeviceFirmwareUploadParam.java
+++ b/src/main/java/com/dji/sample/manage/model/param/DeviceFirmwareUploadParam.java
@@ -3,7 +3,7 @@ package com.dji.sample.manage.model.param;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import lombok.Data;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sample/map/controller/WorkspaceElementController.java b/src/main/java/com/dji/sample/map/controller/WorkspaceElementController.java
index ce65c19..acb8d3f 100644
--- a/src/main/java/com/dji/sample/map/controller/WorkspaceElementController.java
+++ b/src/main/java/com/dji/sample/map/controller/WorkspaceElementController.java
@@ -14,9 +14,9 @@ import org.springframework.web.bind.annotation.DeleteMapping;
 import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.RestController;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
 import java.util.List;
 
 import static com.dji.sample.component.AuthInterceptor.TOKEN_CLAIM;
diff --git a/src/main/java/com/dji/sample/media/controller/FileController.java b/src/main/java/com/dji/sample/media/controller/FileController.java
index 3934014..49e8f2d 100644
--- a/src/main/java/com/dji/sample/media/controller/FileController.java
+++ b/src/main/java/com/dji/sample/media/controller/FileController.java
@@ -7,7 +7,7 @@ import com.dji.sdk.common.PaginationData;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.net.URL;
 
diff --git a/src/main/java/com/dji/sample/media/controller/MediaController.java b/src/main/java/com/dji/sample/media/controller/MediaController.java
index ec21a54..eb6d0c7 100644
--- a/src/main/java/com/dji/sample/media/controller/MediaController.java
+++ b/src/main/java/com/dji/sample/media/controller/MediaController.java
@@ -8,9 +8,9 @@ import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RestController;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sample/storage/controller/StorageController.java b/src/main/java/com/dji/sample/storage/controller/StorageController.java
index 1097cb1..7dfe3b5 100644
--- a/src/main/java/com/dji/sample/storage/controller/StorageController.java
+++ b/src/main/java/com/dji/sample/storage/controller/StorageController.java
@@ -7,8 +7,8 @@ import com.dji.sdk.common.HttpResultResponse;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RestController;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sample/wayline/controller/WaylineFileController.java b/src/main/java/com/dji/sample/wayline/controller/WaylineFileController.java
index 7b877f4..bfba143 100644
--- a/src/main/java/com/dji/sample/wayline/controller/WaylineFileController.java
+++ b/src/main/java/com/dji/sample/wayline/controller/WaylineFileController.java
@@ -15,11 +15,11 @@ import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.multipart.MultipartFile;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Size;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Size;
 import java.io.IOException;
 import java.net.URL;
 import java.sql.SQLException;
diff --git a/src/main/java/com/dji/sample/wayline/controller/WaylineJobController.java b/src/main/java/com/dji/sample/wayline/controller/WaylineJobController.java
index 5d8c259..cdbcc08 100644
--- a/src/main/java/com/dji/sample/wayline/controller/WaylineJobController.java
+++ b/src/main/java/com/dji/sample/wayline/controller/WaylineJobController.java
@@ -11,8 +11,8 @@ import com.dji.sdk.common.PaginationData;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
 import java.sql.SQLException;
 import java.util.Set;
 
diff --git a/src/main/java/com/dji/sample/wayline/model/param/CreateJobParam.java b/src/main/java/com/dji/sample/wayline/model/param/CreateJobParam.java
index f1cdedd..c4e5433 100644
--- a/src/main/java/com/dji/sample/wayline/model/param/CreateJobParam.java
+++ b/src/main/java/com/dji/sample/wayline/model/param/CreateJobParam.java
@@ -6,8 +6,8 @@ import com.dji.sdk.cloudapi.wayline.WaylineTypeEnum;
 import lombok.Data;
 import org.hibernate.validator.constraints.Range;
 
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotNull;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/config/ProductConfigResponse.java b/src/main/java/com/dji/sdk/cloudapi/config/ProductConfigResponse.java
index f3a9bd2..de01ce7 100644
--- a/src/main/java/com/dji/sdk/cloudapi/config/ProductConfigResponse.java
+++ b/src/main/java/com/dji/sdk/cloudapi/config/ProductConfigResponse.java
@@ -2,7 +2,7 @@ package com.dji.sdk.cloudapi.config;
 
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/control/CameraAimRequest.java b/src/main/java/com/dji/sdk/cloudapi/control/CameraAimRequest.java
index ab9ea9d..f9fa25f 100644
--- a/src/main/java/com/dji/sdk/cloudapi/control/CameraAimRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/control/CameraAimRequest.java
@@ -3,9 +3,9 @@ package com.dji.sdk.cloudapi.control;
 import com.dji.sdk.cloudapi.device.PayloadIndex;
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.Max;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.Max;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/control/CameraFocalLengthSetRequest.java b/src/main/java/com/dji/sdk/cloudapi/control/CameraFocalLengthSetRequest.java
index 73de6a0..63fbad4 100644
--- a/src/main/java/com/dji/sdk/cloudapi/control/CameraFocalLengthSetRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/control/CameraFocalLengthSetRequest.java
@@ -3,9 +3,9 @@ package com.dji.sdk.cloudapi.control;
 import com.dji.sdk.cloudapi.device.PayloadIndex;
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.Max;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.Max;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/control/CameraModeSwitchRequest.java b/src/main/java/com/dji/sdk/cloudapi/control/CameraModeSwitchRequest.java
index 37d00c8..a744f43 100644
--- a/src/main/java/com/dji/sdk/cloudapi/control/CameraModeSwitchRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/control/CameraModeSwitchRequest.java
@@ -4,7 +4,7 @@ import com.dji.sdk.cloudapi.device.CameraModeEnum;
 import com.dji.sdk.cloudapi.device.PayloadIndex;
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/control/CameraPhotoTakeRequest.java b/src/main/java/com/dji/sdk/cloudapi/control/CameraPhotoTakeRequest.java
index a2fef96..cc50bde 100644
--- a/src/main/java/com/dji/sdk/cloudapi/control/CameraPhotoTakeRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/control/CameraPhotoTakeRequest.java
@@ -3,7 +3,7 @@ package com.dji.sdk.cloudapi.control;
 import com.dji.sdk.cloudapi.device.PayloadIndex;
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/control/CameraRecordingStartRequest.java b/src/main/java/com/dji/sdk/cloudapi/control/CameraRecordingStartRequest.java
index f695c7d..57e8d20 100644
--- a/src/main/java/com/dji/sdk/cloudapi/control/CameraRecordingStartRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/control/CameraRecordingStartRequest.java
@@ -3,7 +3,7 @@ package com.dji.sdk.cloudapi.control;
 import com.dji.sdk.cloudapi.device.PayloadIndex;
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/control/CameraRecordingStopRequest.java b/src/main/java/com/dji/sdk/cloudapi/control/CameraRecordingStopRequest.java
index f98e268..88c6ddf 100644
--- a/src/main/java/com/dji/sdk/cloudapi/control/CameraRecordingStopRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/control/CameraRecordingStopRequest.java
@@ -3,7 +3,7 @@ package com.dji.sdk.cloudapi.control;
 import com.dji.sdk.cloudapi.device.PayloadIndex;
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/control/DrcModeEnterRequest.java b/src/main/java/com/dji/sdk/cloudapi/control/DrcModeEnterRequest.java
index 7c5bcf2..84de6f9 100644
--- a/src/main/java/com/dji/sdk/cloudapi/control/DrcModeEnterRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/control/DrcModeEnterRequest.java
@@ -2,10 +2,10 @@ package com.dji.sdk.cloudapi.control;
 
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.Valid;
-import javax.validation.constraints.Max;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.Max;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/control/DrcModeMqttBroker.java b/src/main/java/com/dji/sdk/cloudapi/control/DrcModeMqttBroker.java
index 7b16c71..26e6f35 100644
--- a/src/main/java/com/dji/sdk/cloudapi/control/DrcModeMqttBroker.java
+++ b/src/main/java/com/dji/sdk/cloudapi/control/DrcModeMqttBroker.java
@@ -1,8 +1,8 @@
 package com.dji.sdk.cloudapi.control;
 
-import javax.validation.constraints.Max;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.Max;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/control/DroneControlRequest.java b/src/main/java/com/dji/sdk/cloudapi/control/DroneControlRequest.java
index e6ba180..a408e90 100644
--- a/src/main/java/com/dji/sdk/cloudapi/control/DroneControlRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/control/DroneControlRequest.java
@@ -2,9 +2,9 @@ package com.dji.sdk.cloudapi.control;
 
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.Max;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.Max;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/control/FlyToPointRequest.java b/src/main/java/com/dji/sdk/cloudapi/control/FlyToPointRequest.java
index 297d8a9..6dbb4d6 100644
--- a/src/main/java/com/dji/sdk/cloudapi/control/FlyToPointRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/control/FlyToPointRequest.java
@@ -2,8 +2,8 @@ package com.dji.sdk.cloudapi.control;
 
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.Valid;
-import javax.validation.constraints.*;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.*;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/control/GimbalResetRequest.java b/src/main/java/com/dji/sdk/cloudapi/control/GimbalResetRequest.java
index 8030180..bab8b38 100644
--- a/src/main/java/com/dji/sdk/cloudapi/control/GimbalResetRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/control/GimbalResetRequest.java
@@ -3,7 +3,7 @@ package com.dji.sdk.cloudapi.control;
 import com.dji.sdk.cloudapi.device.PayloadIndex;
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/control/HeartBeatRequest.java b/src/main/java/com/dji/sdk/cloudapi/control/HeartBeatRequest.java
index 8ae23af..8127b70 100644
--- a/src/main/java/com/dji/sdk/cloudapi/control/HeartBeatRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/control/HeartBeatRequest.java
@@ -2,8 +2,8 @@ package com.dji.sdk.cloudapi.control;
 
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/control/PayloadAuthorityGrabRequest.java b/src/main/java/com/dji/sdk/cloudapi/control/PayloadAuthorityGrabRequest.java
index 4b99053..71c80d8 100644
--- a/src/main/java/com/dji/sdk/cloudapi/control/PayloadAuthorityGrabRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/control/PayloadAuthorityGrabRequest.java
@@ -3,7 +3,7 @@ package com.dji.sdk.cloudapi.control;
 import com.dji.sdk.cloudapi.device.PayloadIndex;
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/control/Point.java b/src/main/java/com/dji/sdk/cloudapi/control/Point.java
index f44e76c..2004f5e 100644
--- a/src/main/java/com/dji/sdk/cloudapi/control/Point.java
+++ b/src/main/java/com/dji/sdk/cloudapi/control/Point.java
@@ -1,8 +1,8 @@
 package com.dji.sdk.cloudapi.control;
 
-import javax.validation.constraints.Max;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.Max;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/control/TakeoffToPointRequest.java b/src/main/java/com/dji/sdk/cloudapi/control/TakeoffToPointRequest.java
index 883f881..8810c66 100644
--- a/src/main/java/com/dji/sdk/cloudapi/control/TakeoffToPointRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/control/TakeoffToPointRequest.java
@@ -7,10 +7,10 @@ import com.dji.sdk.cloudapi.wayline.RthModeEnum;
 import com.dji.sdk.common.BaseModel;
 import com.dji.sdk.config.version.CloudSDKVersionEnum;
 
-import javax.validation.constraints.Max;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.Max;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/control/api/AbstractControlService.java b/src/main/java/com/dji/sdk/cloudapi/control/api/AbstractControlService.java
index b95af0d..7893e31 100644
--- a/src/main/java/com/dji/sdk/cloudapi/control/api/AbstractControlService.java
+++ b/src/main/java/com/dji/sdk/cloudapi/control/api/AbstractControlService.java
@@ -22,7 +22,7 @@ import org.springframework.integration.annotation.ServiceActivator;
 import org.springframework.messaging.Message;
 import org.springframework.messaging.MessageHeaders;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
 
diff --git a/src/main/java/com/dji/sdk/cloudapi/debug/AirConditionerModeSwitchRequest.java b/src/main/java/com/dji/sdk/cloudapi/debug/AirConditionerModeSwitchRequest.java
index 78698bc..6f0c65d 100644
--- a/src/main/java/com/dji/sdk/cloudapi/debug/AirConditionerModeSwitchRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/debug/AirConditionerModeSwitchRequest.java
@@ -2,7 +2,7 @@ package com.dji.sdk.cloudapi.debug;
 
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/debug/AlarmStateSwitchRequest.java b/src/main/java/com/dji/sdk/cloudapi/debug/AlarmStateSwitchRequest.java
index 0f7c584..85c6f6e 100644
--- a/src/main/java/com/dji/sdk/cloudapi/debug/AlarmStateSwitchRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/debug/AlarmStateSwitchRequest.java
@@ -3,7 +3,7 @@ package com.dji.sdk.cloudapi.debug;
 import com.dji.sdk.cloudapi.device.SwitchActionEnum;
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/debug/BatteryMaintenanceSwitchRequest.java b/src/main/java/com/dji/sdk/cloudapi/debug/BatteryMaintenanceSwitchRequest.java
index c25f1ca..93ce531 100644
--- a/src/main/java/com/dji/sdk/cloudapi/debug/BatteryMaintenanceSwitchRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/debug/BatteryMaintenanceSwitchRequest.java
@@ -3,7 +3,7 @@ package com.dji.sdk.cloudapi.debug;
 import com.dji.sdk.cloudapi.device.SwitchActionEnum;
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/debug/BatteryStoreModeSwitchRequest.java b/src/main/java/com/dji/sdk/cloudapi/debug/BatteryStoreModeSwitchRequest.java
index 974bbcc..4a32938 100644
--- a/src/main/java/com/dji/sdk/cloudapi/debug/BatteryStoreModeSwitchRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/debug/BatteryStoreModeSwitchRequest.java
@@ -3,7 +3,7 @@ package com.dji.sdk.cloudapi.debug;
 import com.dji.sdk.cloudapi.device.BatteryStoreModeEnum;
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/debug/SdrWorkmodeSwitchRequest.java b/src/main/java/com/dji/sdk/cloudapi/debug/SdrWorkmodeSwitchRequest.java
index 2298a28..67d51d3 100644
--- a/src/main/java/com/dji/sdk/cloudapi/debug/SdrWorkmodeSwitchRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/debug/SdrWorkmodeSwitchRequest.java
@@ -3,7 +3,7 @@ package com.dji.sdk.cloudapi.debug;
 import com.dji.sdk.cloudapi.device.LinkWorkModeEnum;
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/debug/api/AbstractDebugService.java b/src/main/java/com/dji/sdk/cloudapi/debug/api/AbstractDebugService.java
index 08d3933..ad30702 100644
--- a/src/main/java/com/dji/sdk/cloudapi/debug/api/AbstractDebugService.java
+++ b/src/main/java/com/dji/sdk/cloudapi/debug/api/AbstractDebugService.java
@@ -21,7 +21,7 @@ import org.springframework.integration.annotation.ServiceActivator;
 import org.springframework.messaging.Message;
 import org.springframework.messaging.MessageHeaders;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
 import java.util.ArrayList;
diff --git a/src/main/java/com/dji/sdk/cloudapi/device/DeviceOsdHost.java b/src/main/java/com/dji/sdk/cloudapi/device/DeviceOsdHost.java
index f540f48..1e58d3f 100644
--- a/src/main/java/com/dji/sdk/cloudapi/device/DeviceOsdHost.java
+++ b/src/main/java/com/dji/sdk/cloudapi/device/DeviceOsdHost.java
@@ -3,7 +3,7 @@ package com.dji.sdk.cloudapi.device;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/device/DeviceOsdWsResponse.java b/src/main/java/com/dji/sdk/cloudapi/device/DeviceOsdWsResponse.java
index 57e17f5..b1e9312 100644
--- a/src/main/java/com/dji/sdk/cloudapi/device/DeviceOsdWsResponse.java
+++ b/src/main/java/com/dji/sdk/cloudapi/device/DeviceOsdWsResponse.java
@@ -3,8 +3,8 @@ package com.dji.sdk.cloudapi.device;
 import com.dji.sdk.common.BaseModel;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/device/PayloadIndex.java b/src/main/java/com/dji/sdk/cloudapi/device/PayloadIndex.java
index c3c842f..87c2046 100644
--- a/src/main/java/com/dji/sdk/cloudapi/device/PayloadIndex.java
+++ b/src/main/java/com/dji/sdk/cloudapi/device/PayloadIndex.java
@@ -5,7 +5,7 @@ import com.dji.sdk.exception.CloudSDKException;
 import com.fasterxml.jackson.annotation.JsonCreator;
 import com.fasterxml.jackson.annotation.JsonValue;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 import java.util.Arrays;
 import java.util.Objects;
 
diff --git a/src/main/java/com/dji/sdk/cloudapi/device/VideoId.java b/src/main/java/com/dji/sdk/cloudapi/device/VideoId.java
index a61b77b..6247807 100644
--- a/src/main/java/com/dji/sdk/cloudapi/device/VideoId.java
+++ b/src/main/java/com/dji/sdk/cloudapi/device/VideoId.java
@@ -7,7 +7,7 @@ import com.fasterxml.jackson.annotation.JsonCreator;
 import com.fasterxml.jackson.annotation.JsonValue;
 import org.springframework.util.StringUtils;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 import java.util.Arrays;
 import java.util.Objects;
 
diff --git a/src/main/java/com/dji/sdk/cloudapi/firmware/OtaCreateDevice.java b/src/main/java/com/dji/sdk/cloudapi/firmware/OtaCreateDevice.java
index bef65e7..fced5e9 100644
--- a/src/main/java/com/dji/sdk/cloudapi/firmware/OtaCreateDevice.java
+++ b/src/main/java/com/dji/sdk/cloudapi/firmware/OtaCreateDevice.java
@@ -1,7 +1,7 @@
 package com.dji.sdk.cloudapi.firmware;
 
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/firmware/OtaCreateRequest.java b/src/main/java/com/dji/sdk/cloudapi/firmware/OtaCreateRequest.java
index 1c43792..67210de 100644
--- a/src/main/java/com/dji/sdk/cloudapi/firmware/OtaCreateRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/firmware/OtaCreateRequest.java
@@ -2,9 +2,9 @@ package com.dji.sdk.cloudapi.firmware;
 
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Size;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Size;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/firmware/api/AbstractFirmwareService.java b/src/main/java/com/dji/sdk/cloudapi/firmware/api/AbstractFirmwareService.java
index 461ae0c..bb8aebb 100644
--- a/src/main/java/com/dji/sdk/cloudapi/firmware/api/AbstractFirmwareService.java
+++ b/src/main/java/com/dji/sdk/cloudapi/firmware/api/AbstractFirmwareService.java
@@ -18,7 +18,7 @@ import org.springframework.integration.annotation.ServiceActivator;
 import org.springframework.messaging.Message;
 import org.springframework.messaging.MessageHeaders;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/livestream/LiveLensChangeRequest.java b/src/main/java/com/dji/sdk/cloudapi/livestream/LiveLensChangeRequest.java
index ff498b9..8385ebd 100644
--- a/src/main/java/com/dji/sdk/cloudapi/livestream/LiveLensChangeRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/livestream/LiveLensChangeRequest.java
@@ -3,7 +3,7 @@ package com.dji.sdk.cloudapi.livestream;
 import com.dji.sdk.cloudapi.device.VideoId;
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/livestream/LiveSetQualityRequest.java b/src/main/java/com/dji/sdk/cloudapi/livestream/LiveSetQualityRequest.java
index 541b25e..1965ab9 100644
--- a/src/main/java/com/dji/sdk/cloudapi/livestream/LiveSetQualityRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/livestream/LiveSetQualityRequest.java
@@ -3,7 +3,7 @@ package com.dji.sdk.cloudapi.livestream;
 import com.dji.sdk.cloudapi.device.VideoId;
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/livestream/LiveStartPushRequest.java b/src/main/java/com/dji/sdk/cloudapi/livestream/LiveStartPushRequest.java
index 8748869..d4db39c 100644
--- a/src/main/java/com/dji/sdk/cloudapi/livestream/LiveStartPushRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/livestream/LiveStartPushRequest.java
@@ -3,8 +3,8 @@ package com.dji.sdk.cloudapi.livestream;
 import com.dji.sdk.cloudapi.device.VideoId;
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/livestream/LiveStopPushRequest.java b/src/main/java/com/dji/sdk/cloudapi/livestream/LiveStopPushRequest.java
index 9107c53..e3521d0 100644
--- a/src/main/java/com/dji/sdk/cloudapi/livestream/LiveStopPushRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/livestream/LiveStopPushRequest.java
@@ -3,7 +3,7 @@ package com.dji.sdk.cloudapi.livestream;
 import com.dji.sdk.cloudapi.device.VideoId;
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/livestream/api/AbstractLivestreamService.java b/src/main/java/com/dji/sdk/cloudapi/livestream/api/AbstractLivestreamService.java
index 7db68f6..a51997c 100644
--- a/src/main/java/com/dji/sdk/cloudapi/livestream/api/AbstractLivestreamService.java
+++ b/src/main/java/com/dji/sdk/cloudapi/livestream/api/AbstractLivestreamService.java
@@ -12,7 +12,7 @@ import org.springframework.integration.annotation.ServiceActivator;
 import org.springframework.messaging.Message;
 import org.springframework.messaging.MessageHeaders;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/log/FileUploadListRequest.java b/src/main/java/com/dji/sdk/cloudapi/log/FileUploadListRequest.java
index 229fd4c..027ccfd 100644
--- a/src/main/java/com/dji/sdk/cloudapi/log/FileUploadListRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/log/FileUploadListRequest.java
@@ -2,9 +2,9 @@ package com.dji.sdk.cloudapi.log;
 
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Size;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Size;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/log/FileUploadStartFile.java b/src/main/java/com/dji/sdk/cloudapi/log/FileUploadStartFile.java
index 751e38f..8c871ac 100644
--- a/src/main/java/com/dji/sdk/cloudapi/log/FileUploadStartFile.java
+++ b/src/main/java/com/dji/sdk/cloudapi/log/FileUploadStartFile.java
@@ -1,7 +1,7 @@
 package com.dji.sdk.cloudapi.log;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/log/FileUploadStartParam.java b/src/main/java/com/dji/sdk/cloudapi/log/FileUploadStartParam.java
index df0e6af..32c3c0a 100644
--- a/src/main/java/com/dji/sdk/cloudapi/log/FileUploadStartParam.java
+++ b/src/main/java/com/dji/sdk/cloudapi/log/FileUploadStartParam.java
@@ -1,8 +1,8 @@
 package com.dji.sdk.cloudapi.log;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Size;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Size;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/log/FileUploadStartRequest.java b/src/main/java/com/dji/sdk/cloudapi/log/FileUploadStartRequest.java
index 366836a..b72d036 100644
--- a/src/main/java/com/dji/sdk/cloudapi/log/FileUploadStartRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/log/FileUploadStartRequest.java
@@ -5,8 +5,8 @@ import com.dji.sdk.cloudapi.storage.OssTypeEnum;
 import com.dji.sdk.cloudapi.storage.StsCredentialsResponse;
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/log/FileUploadUpdateRequest.java b/src/main/java/com/dji/sdk/cloudapi/log/FileUploadUpdateRequest.java
index ce62daf..fe582cc 100644
--- a/src/main/java/com/dji/sdk/cloudapi/log/FileUploadUpdateRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/log/FileUploadUpdateRequest.java
@@ -2,9 +2,9 @@ package com.dji.sdk.cloudapi.log;
 
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Size;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Size;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/log/LogFileIndex.java b/src/main/java/com/dji/sdk/cloudapi/log/LogFileIndex.java
index b830901..0d191b7 100644
--- a/src/main/java/com/dji/sdk/cloudapi/log/LogFileIndex.java
+++ b/src/main/java/com/dji/sdk/cloudapi/log/LogFileIndex.java
@@ -1,6 +1,6 @@
 package com.dji.sdk.cloudapi.log;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/log/api/AbstractLogService.java b/src/main/java/com/dji/sdk/cloudapi/log/api/AbstractLogService.java
index e8daece..b668642 100644
--- a/src/main/java/com/dji/sdk/cloudapi/log/api/AbstractLogService.java
+++ b/src/main/java/com/dji/sdk/cloudapi/log/api/AbstractLogService.java
@@ -15,7 +15,7 @@ import org.springframework.integration.annotation.ServiceActivator;
 import org.springframework.messaging.Message;
 import org.springframework.messaging.MessageHeaders;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/map/CreateMapElementRequest.java b/src/main/java/com/dji/sdk/cloudapi/map/CreateMapElementRequest.java
index 8c5947c..2ec83c7 100644
--- a/src/main/java/com/dji/sdk/cloudapi/map/CreateMapElementRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/map/CreateMapElementRequest.java
@@ -2,9 +2,9 @@ package com.dji.sdk.cloudapi.map;
 
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/map/CreateMapElementResponse.java b/src/main/java/com/dji/sdk/cloudapi/map/CreateMapElementResponse.java
index 26769ed..a5a828c 100644
--- a/src/main/java/com/dji/sdk/cloudapi/map/CreateMapElementResponse.java
+++ b/src/main/java/com/dji/sdk/cloudapi/map/CreateMapElementResponse.java
@@ -2,8 +2,8 @@ package com.dji.sdk.cloudapi.map;
 
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/map/ElementContent.java b/src/main/java/com/dji/sdk/cloudapi/map/ElementContent.java
index b6aefbe..d6fc500 100644
--- a/src/main/java/com/dji/sdk/cloudapi/map/ElementContent.java
+++ b/src/main/java/com/dji/sdk/cloudapi/map/ElementContent.java
@@ -2,8 +2,8 @@ package com.dji.sdk.cloudapi.map;
 
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/map/ElementCoordinate.java b/src/main/java/com/dji/sdk/cloudapi/map/ElementCoordinate.java
index 8932943..3bc0eda 100644
--- a/src/main/java/com/dji/sdk/cloudapi/map/ElementCoordinate.java
+++ b/src/main/java/com/dji/sdk/cloudapi/map/ElementCoordinate.java
@@ -2,7 +2,7 @@ package com.dji.sdk.cloudapi.map;
 
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/map/ElementLineStringGeometry.java b/src/main/java/com/dji/sdk/cloudapi/map/ElementLineStringGeometry.java
index 5aef1cf..c4cd793 100644
--- a/src/main/java/com/dji/sdk/cloudapi/map/ElementLineStringGeometry.java
+++ b/src/main/java/com/dji/sdk/cloudapi/map/ElementLineStringGeometry.java
@@ -5,8 +5,8 @@ import com.dji.sdk.exception.CloudSDKException;
 import io.swagger.v3.oas.annotations.media.Schema;
 import org.springframework.util.CollectionUtils;
 
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Size;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Size;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
diff --git a/src/main/java/com/dji/sdk/cloudapi/map/ElementPointGeometry.java b/src/main/java/com/dji/sdk/cloudapi/map/ElementPointGeometry.java
index 5bed461..99e09cc 100644
--- a/src/main/java/com/dji/sdk/cloudapi/map/ElementPointGeometry.java
+++ b/src/main/java/com/dji/sdk/cloudapi/map/ElementPointGeometry.java
@@ -5,8 +5,8 @@ import com.dji.sdk.exception.CloudSDKException;
 import io.swagger.v3.oas.annotations.media.Schema;
 import org.springframework.util.CollectionUtils;
 
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Size;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Size;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
diff --git a/src/main/java/com/dji/sdk/cloudapi/map/ElementPolygonGeometry.java b/src/main/java/com/dji/sdk/cloudapi/map/ElementPolygonGeometry.java
index 7068c9d..da5195e 100644
--- a/src/main/java/com/dji/sdk/cloudapi/map/ElementPolygonGeometry.java
+++ b/src/main/java/com/dji/sdk/cloudapi/map/ElementPolygonGeometry.java
@@ -6,8 +6,8 @@ import com.dji.sdk.exception.CloudSDKException;
 import io.swagger.v3.oas.annotations.media.Schema;
 import org.springframework.util.CollectionUtils;
 
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Size;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Size;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
diff --git a/src/main/java/com/dji/sdk/cloudapi/map/ElementProperty.java b/src/main/java/com/dji/sdk/cloudapi/map/ElementProperty.java
index d3a35aa..2d3aa63 100644
--- a/src/main/java/com/dji/sdk/cloudapi/map/ElementProperty.java
+++ b/src/main/java/com/dji/sdk/cloudapi/map/ElementProperty.java
@@ -3,8 +3,8 @@ package com.dji.sdk.cloudapi.map;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/map/ElementResource.java b/src/main/java/com/dji/sdk/cloudapi/map/ElementResource.java
index 33571d2..21366e0 100644
--- a/src/main/java/com/dji/sdk/cloudapi/map/ElementResource.java
+++ b/src/main/java/com/dji/sdk/cloudapi/map/ElementResource.java
@@ -3,8 +3,8 @@ package com.dji.sdk.cloudapi.map;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/map/GetMapElementsResponse.java b/src/main/java/com/dji/sdk/cloudapi/map/GetMapElementsResponse.java
index d2b0c71..9e02833 100644
--- a/src/main/java/com/dji/sdk/cloudapi/map/GetMapElementsResponse.java
+++ b/src/main/java/com/dji/sdk/cloudapi/map/GetMapElementsResponse.java
@@ -4,9 +4,9 @@ import com.dji.sdk.common.BaseModel;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/map/MapElementCreateWsResponse.java b/src/main/java/com/dji/sdk/cloudapi/map/MapElementCreateWsResponse.java
index 74933f5..72d8f31 100644
--- a/src/main/java/com/dji/sdk/cloudapi/map/MapElementCreateWsResponse.java
+++ b/src/main/java/com/dji/sdk/cloudapi/map/MapElementCreateWsResponse.java
@@ -4,10 +4,10 @@ import com.dji.sdk.common.BaseModel;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.Valid;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/map/MapElementDeleteWsResponse.java b/src/main/java/com/dji/sdk/cloudapi/map/MapElementDeleteWsResponse.java
index fdf48ae..3cda3e4 100644
--- a/src/main/java/com/dji/sdk/cloudapi/map/MapElementDeleteWsResponse.java
+++ b/src/main/java/com/dji/sdk/cloudapi/map/MapElementDeleteWsResponse.java
@@ -4,8 +4,8 @@ import com.dji.sdk.common.BaseModel;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/map/MapElementUpdateWsResponse.java b/src/main/java/com/dji/sdk/cloudapi/map/MapElementUpdateWsResponse.java
index 2ace077..7f2ee2c 100644
--- a/src/main/java/com/dji/sdk/cloudapi/map/MapElementUpdateWsResponse.java
+++ b/src/main/java/com/dji/sdk/cloudapi/map/MapElementUpdateWsResponse.java
@@ -4,10 +4,10 @@ import com.dji.sdk.common.BaseModel;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.Valid;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/map/MapGroupElement.java b/src/main/java/com/dji/sdk/cloudapi/map/MapGroupElement.java
index f360571..d3e599a 100644
--- a/src/main/java/com/dji/sdk/cloudapi/map/MapGroupElement.java
+++ b/src/main/java/com/dji/sdk/cloudapi/map/MapGroupElement.java
@@ -3,10 +3,10 @@ package com.dji.sdk.cloudapi.map;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.Valid;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/map/MapGroupRefreshWsResponse.java b/src/main/java/com/dji/sdk/cloudapi/map/MapGroupRefreshWsResponse.java
index b30c2ea..8e66ded 100644
--- a/src/main/java/com/dji/sdk/cloudapi/map/MapGroupRefreshWsResponse.java
+++ b/src/main/java/com/dji/sdk/cloudapi/map/MapGroupRefreshWsResponse.java
@@ -4,9 +4,9 @@ import com.dji.sdk.common.BaseModel;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
-import javax.validation.constraints.Size;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
+import jakarta.validation.constraints.Size;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/map/UpdateMapElementRequest.java b/src/main/java/com/dji/sdk/cloudapi/map/UpdateMapElementRequest.java
index 1c712be..ac4346a 100644
--- a/src/main/java/com/dji/sdk/cloudapi/map/UpdateMapElementRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/map/UpdateMapElementRequest.java
@@ -2,8 +2,8 @@ package com.dji.sdk.cloudapi.map;
 
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/map/api/IHttpMapService.java b/src/main/java/com/dji/sdk/cloudapi/map/api/IHttpMapService.java
index be0530b..9f9393a 100644
--- a/src/main/java/com/dji/sdk/cloudapi/map/api/IHttpMapService.java
+++ b/src/main/java/com/dji/sdk/cloudapi/map/api/IHttpMapService.java
@@ -11,9 +11,9 @@ import io.swagger.v3.oas.annotations.media.Schema;
 import io.swagger.v3.oas.annotations.tags.Tag;
 import org.springframework.web.bind.annotation.*;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/media/FastUploadExtension.java b/src/main/java/com/dji/sdk/cloudapi/media/FastUploadExtension.java
index 5426ceb..f852b9c 100644
--- a/src/main/java/com/dji/sdk/cloudapi/media/FastUploadExtension.java
+++ b/src/main/java/com/dji/sdk/cloudapi/media/FastUploadExtension.java
@@ -4,7 +4,7 @@ import com.dji.sdk.cloudapi.device.DeviceEnum;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/media/FolderUploadCallbackRequest.java b/src/main/java/com/dji/sdk/cloudapi/media/FolderUploadCallbackRequest.java
index 78abab4..c4892c4 100644
--- a/src/main/java/com/dji/sdk/cloudapi/media/FolderUploadCallbackRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/media/FolderUploadCallbackRequest.java
@@ -3,7 +3,7 @@ package com.dji.sdk.cloudapi.media;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/media/GetFileFingerprintRequest.java b/src/main/java/com/dji/sdk/cloudapi/media/GetFileFingerprintRequest.java
index 7fe08bb..9e6d967 100644
--- a/src/main/java/com/dji/sdk/cloudapi/media/GetFileFingerprintRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/media/GetFileFingerprintRequest.java
@@ -4,7 +4,7 @@ package com.dji.sdk.cloudapi.media;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/media/GetFileFingerprintResponse.java b/src/main/java/com/dji/sdk/cloudapi/media/GetFileFingerprintResponse.java
index d0ab21a..a0f8bd6 100644
--- a/src/main/java/com/dji/sdk/cloudapi/media/GetFileFingerprintResponse.java
+++ b/src/main/java/com/dji/sdk/cloudapi/media/GetFileFingerprintResponse.java
@@ -5,7 +5,7 @@ import com.dji.sdk.common.BaseModel;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/media/MediaFastUploadRequest.java b/src/main/java/com/dji/sdk/cloudapi/media/MediaFastUploadRequest.java
index 78c22b3..2e3fb51 100644
--- a/src/main/java/com/dji/sdk/cloudapi/media/MediaFastUploadRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/media/MediaFastUploadRequest.java
@@ -2,8 +2,8 @@ package com.dji.sdk.cloudapi.media;
 
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/media/MediaFileExtension.java b/src/main/java/com/dji/sdk/cloudapi/media/MediaFileExtension.java
index 8e2f7c9..39381d4 100644
--- a/src/main/java/com/dji/sdk/cloudapi/media/MediaFileExtension.java
+++ b/src/main/java/com/dji/sdk/cloudapi/media/MediaFileExtension.java
@@ -4,7 +4,7 @@ import com.dji.sdk.cloudapi.device.DeviceEnum;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/media/MediaFileMetadata.java b/src/main/java/com/dji/sdk/cloudapi/media/MediaFileMetadata.java
index 5a5a17b..541a3d2 100644
--- a/src/main/java/com/dji/sdk/cloudapi/media/MediaFileMetadata.java
+++ b/src/main/java/com/dji/sdk/cloudapi/media/MediaFileMetadata.java
@@ -4,8 +4,8 @@ import com.fasterxml.jackson.annotation.JsonFormat;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 import java.time.LocalDateTime;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/media/MediaUploadCallbackRequest.java b/src/main/java/com/dji/sdk/cloudapi/media/MediaUploadCallbackRequest.java
index 6567ea3..a5a7722 100644
--- a/src/main/java/com/dji/sdk/cloudapi/media/MediaUploadCallbackRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/media/MediaUploadCallbackRequest.java
@@ -3,8 +3,8 @@ package com.dji.sdk.cloudapi.media;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/media/Position.java b/src/main/java/com/dji/sdk/cloudapi/media/Position.java
index f192f6e..94f8567 100644
--- a/src/main/java/com/dji/sdk/cloudapi/media/Position.java
+++ b/src/main/java/com/dji/sdk/cloudapi/media/Position.java
@@ -2,7 +2,7 @@ package com.dji.sdk.cloudapi.media;
 
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/media/UploadFlighttaskMediaPrioritize.java b/src/main/java/com/dji/sdk/cloudapi/media/UploadFlighttaskMediaPrioritize.java
index 5dfe88f..aea0e69 100644
--- a/src/main/java/com/dji/sdk/cloudapi/media/UploadFlighttaskMediaPrioritize.java
+++ b/src/main/java/com/dji/sdk/cloudapi/media/UploadFlighttaskMediaPrioritize.java
@@ -2,8 +2,8 @@ package com.dji.sdk.cloudapi.media;
 
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/media/api/AbstractMediaService.java b/src/main/java/com/dji/sdk/cloudapi/media/api/AbstractMediaService.java
index ad45aa8..6a1bbda 100644
--- a/src/main/java/com/dji/sdk/cloudapi/media/api/AbstractMediaService.java
+++ b/src/main/java/com/dji/sdk/cloudapi/media/api/AbstractMediaService.java
@@ -17,7 +17,7 @@ import com.dji.sdk.mqtt.services.TopicServicesResponse;
 import org.springframework.integration.annotation.ServiceActivator;
 import org.springframework.messaging.MessageHeaders;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/media/api/IHttpMediaService.java b/src/main/java/com/dji/sdk/cloudapi/media/api/IHttpMediaService.java
index 81a23e0..55032c7 100644
--- a/src/main/java/com/dji/sdk/cloudapi/media/api/IHttpMediaService.java
+++ b/src/main/java/com/dji/sdk/cloudapi/media/api/IHttpMediaService.java
@@ -13,9 +13,9 @@ import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.validation.Valid;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/organization/AirportBindStatusResponse.java b/src/main/java/com/dji/sdk/cloudapi/organization/AirportBindStatusResponse.java
index 9928c5c..6531df3 100644
--- a/src/main/java/com/dji/sdk/cloudapi/organization/AirportBindStatusResponse.java
+++ b/src/main/java/com/dji/sdk/cloudapi/organization/AirportBindStatusResponse.java
@@ -2,9 +2,9 @@ package com.dji.sdk.cloudapi.organization;
 
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Size;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Size;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/organization/AirportOrganizationBindResponse.java b/src/main/java/com/dji/sdk/cloudapi/organization/AirportOrganizationBindResponse.java
index 8155091..55a7a7d 100644
--- a/src/main/java/com/dji/sdk/cloudapi/organization/AirportOrganizationBindResponse.java
+++ b/src/main/java/com/dji/sdk/cloudapi/organization/AirportOrganizationBindResponse.java
@@ -2,9 +2,9 @@ package com.dji.sdk.cloudapi.organization;
 
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Size;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Size;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/organization/AirportOrganizationGetResponse.java b/src/main/java/com/dji/sdk/cloudapi/organization/AirportOrganizationGetResponse.java
index cb10abf..079e7d1 100644
--- a/src/main/java/com/dji/sdk/cloudapi/organization/AirportOrganizationGetResponse.java
+++ b/src/main/java/com/dji/sdk/cloudapi/organization/AirportOrganizationGetResponse.java
@@ -2,7 +2,7 @@ package com.dji.sdk.cloudapi.organization;
 
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/organization/BindStatusRequestDevice.java b/src/main/java/com/dji/sdk/cloudapi/organization/BindStatusRequestDevice.java
index 68a263e..934b27f 100644
--- a/src/main/java/com/dji/sdk/cloudapi/organization/BindStatusRequestDevice.java
+++ b/src/main/java/com/dji/sdk/cloudapi/organization/BindStatusRequestDevice.java
@@ -2,7 +2,7 @@ package com.dji.sdk.cloudapi.organization;
 
 import com.fasterxml.jackson.annotation.JsonProperty;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/organization/OrganizationBindInfo.java b/src/main/java/com/dji/sdk/cloudapi/organization/OrganizationBindInfo.java
index 128c44b..67e0e05 100644
--- a/src/main/java/com/dji/sdk/cloudapi/organization/OrganizationBindInfo.java
+++ b/src/main/java/com/dji/sdk/cloudapi/organization/OrganizationBindInfo.java
@@ -2,7 +2,7 @@ package com.dji.sdk.cloudapi.organization;
 
 import com.dji.sdk.mqtt.MqttReply;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/property/DistanceLimitStatusData.java b/src/main/java/com/dji/sdk/cloudapi/property/DistanceLimitStatusData.java
index cf03f33..960bb86 100644
--- a/src/main/java/com/dji/sdk/cloudapi/property/DistanceLimitStatusData.java
+++ b/src/main/java/com/dji/sdk/cloudapi/property/DistanceLimitStatusData.java
@@ -3,8 +3,8 @@ package com.dji.sdk.cloudapi.property;
 import com.dji.sdk.cloudapi.device.SwitchActionEnum;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
-import javax.validation.constraints.Max;
-import javax.validation.constraints.Min;
+import jakarta.validation.constraints.Max;
+import jakarta.validation.constraints.Min;
 
 /**
  * The state of the drone's limited distance
diff --git a/src/main/java/com/dji/sdk/cloudapi/property/DistanceLimitStatusSet.java b/src/main/java/com/dji/sdk/cloudapi/property/DistanceLimitStatusSet.java
index ddca848..bdbcfd8 100644
--- a/src/main/java/com/dji/sdk/cloudapi/property/DistanceLimitStatusSet.java
+++ b/src/main/java/com/dji/sdk/cloudapi/property/DistanceLimitStatusSet.java
@@ -2,8 +2,8 @@ package com.dji.sdk.cloudapi.property;
 
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * The state of the drone's limited distance
diff --git a/src/main/java/com/dji/sdk/cloudapi/property/ExitWaylineWhenRcLostSet.java b/src/main/java/com/dji/sdk/cloudapi/property/ExitWaylineWhenRcLostSet.java
index d9053fa..0e5d158 100644
--- a/src/main/java/com/dji/sdk/cloudapi/property/ExitWaylineWhenRcLostSet.java
+++ b/src/main/java/com/dji/sdk/cloudapi/property/ExitWaylineWhenRcLostSet.java
@@ -4,7 +4,7 @@ import com.dji.sdk.cloudapi.device.ExitWaylineWhenRcLostEnum;
 import com.dji.sdk.common.BaseModel;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/property/HeightLimitSet.java b/src/main/java/com/dji/sdk/cloudapi/property/HeightLimitSet.java
index 0fc3180..908e0a5 100644
--- a/src/main/java/com/dji/sdk/cloudapi/property/HeightLimitSet.java
+++ b/src/main/java/com/dji/sdk/cloudapi/property/HeightLimitSet.java
@@ -3,9 +3,9 @@ package com.dji.sdk.cloudapi.property;
 import com.dji.sdk.common.BaseModel;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
-import javax.validation.constraints.Max;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.Max;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/property/NightLightsStateSet.java b/src/main/java/com/dji/sdk/cloudapi/property/NightLightsStateSet.java
index feb5fea..3e779bb 100644
--- a/src/main/java/com/dji/sdk/cloudapi/property/NightLightsStateSet.java
+++ b/src/main/java/com/dji/sdk/cloudapi/property/NightLightsStateSet.java
@@ -4,7 +4,7 @@ import com.dji.sdk.cloudapi.device.SwitchActionEnum;
 import com.dji.sdk.common.BaseModel;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/property/ObstacleAvoidanceSet.java b/src/main/java/com/dji/sdk/cloudapi/property/ObstacleAvoidanceSet.java
index f84ec4c..2fbce67 100644
--- a/src/main/java/com/dji/sdk/cloudapi/property/ObstacleAvoidanceSet.java
+++ b/src/main/java/com/dji/sdk/cloudapi/property/ObstacleAvoidanceSet.java
@@ -3,8 +3,8 @@ package com.dji.sdk.cloudapi.property;
 import com.dji.sdk.cloudapi.device.ObstacleAvoidance;
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/property/RcLostActionSet.java b/src/main/java/com/dji/sdk/cloudapi/property/RcLostActionSet.java
index 6866478..fe9e0db 100644
--- a/src/main/java/com/dji/sdk/cloudapi/property/RcLostActionSet.java
+++ b/src/main/java/com/dji/sdk/cloudapi/property/RcLostActionSet.java
@@ -4,7 +4,7 @@ import com.dji.sdk.cloudapi.device.RcLostActionEnum;
 import com.dji.sdk.common.BaseModel;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/property/RthAltitudeSet.java b/src/main/java/com/dji/sdk/cloudapi/property/RthAltitudeSet.java
index 94e3094..a3a9a5c 100644
--- a/src/main/java/com/dji/sdk/cloudapi/property/RthAltitudeSet.java
+++ b/src/main/java/com/dji/sdk/cloudapi/property/RthAltitudeSet.java
@@ -3,9 +3,9 @@ package com.dji.sdk.cloudapi.property;
 import com.dji.sdk.common.BaseModel;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
-import javax.validation.constraints.Max;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.Max;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/property/ThermalCurrentPaletteStyleSet.java b/src/main/java/com/dji/sdk/cloudapi/property/ThermalCurrentPaletteStyleSet.java
index 6b5e847..536cd54 100644
--- a/src/main/java/com/dji/sdk/cloudapi/property/ThermalCurrentPaletteStyleSet.java
+++ b/src/main/java/com/dji/sdk/cloudapi/property/ThermalCurrentPaletteStyleSet.java
@@ -5,8 +5,8 @@ import com.dji.sdk.cloudapi.device.ThermalPaletteStyleEnum;
 import com.dji.sdk.common.BaseModel;
 import com.fasterxml.jackson.annotation.JsonValue;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 import java.util.Map;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/property/ThermalGainModeSet.java b/src/main/java/com/dji/sdk/cloudapi/property/ThermalGainModeSet.java
index f49bea4..09415a2 100644
--- a/src/main/java/com/dji/sdk/cloudapi/property/ThermalGainModeSet.java
+++ b/src/main/java/com/dji/sdk/cloudapi/property/ThermalGainModeSet.java
@@ -5,8 +5,8 @@ import com.dji.sdk.cloudapi.device.ThermalGainModeEnum;
 import com.dji.sdk.common.BaseModel;
 import com.fasterxml.jackson.annotation.JsonValue;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 import java.util.Map;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/property/ThermalIsothermLowerLimitSet.java b/src/main/java/com/dji/sdk/cloudapi/property/ThermalIsothermLowerLimitSet.java
index 66ff5b4..652c69d 100644
--- a/src/main/java/com/dji/sdk/cloudapi/property/ThermalIsothermLowerLimitSet.java
+++ b/src/main/java/com/dji/sdk/cloudapi/property/ThermalIsothermLowerLimitSet.java
@@ -4,8 +4,8 @@ import com.dji.sdk.cloudapi.device.PayloadIndex;
 import com.dji.sdk.common.BaseModel;
 import com.fasterxml.jackson.annotation.JsonValue;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 import java.util.Map;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/property/ThermalIsothermStateSet.java b/src/main/java/com/dji/sdk/cloudapi/property/ThermalIsothermStateSet.java
index df25b38..7622125 100644
--- a/src/main/java/com/dji/sdk/cloudapi/property/ThermalIsothermStateSet.java
+++ b/src/main/java/com/dji/sdk/cloudapi/property/ThermalIsothermStateSet.java
@@ -5,8 +5,8 @@ import com.dji.sdk.cloudapi.device.SwitchActionEnum;
 import com.dji.sdk.common.BaseModel;
 import com.fasterxml.jackson.annotation.JsonValue;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 import java.util.Map;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/property/ThermalIsothermUpperLimitSet.java b/src/main/java/com/dji/sdk/cloudapi/property/ThermalIsothermUpperLimitSet.java
index 3d5df2b..95d1b10 100644
--- a/src/main/java/com/dji/sdk/cloudapi/property/ThermalIsothermUpperLimitSet.java
+++ b/src/main/java/com/dji/sdk/cloudapi/property/ThermalIsothermUpperLimitSet.java
@@ -4,8 +4,8 @@ import com.dji.sdk.cloudapi.device.PayloadIndex;
 import com.dji.sdk.common.BaseModel;
 import com.fasterxml.jackson.annotation.JsonValue;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 import java.util.Map;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/property/api/AbstractPropertyService.java b/src/main/java/com/dji/sdk/cloudapi/property/api/AbstractPropertyService.java
index 8d5c814..8c557d3 100644
--- a/src/main/java/com/dji/sdk/cloudapi/property/api/AbstractPropertyService.java
+++ b/src/main/java/com/dji/sdk/cloudapi/property/api/AbstractPropertyService.java
@@ -12,8 +12,8 @@ import com.dji.sdk.mqtt.property.PropertySetPublish;
 import com.dji.sdk.mqtt.property.PropertySetReplyResultEnum;
 import com.fasterxml.jackson.annotation.JsonProperty;
 
-import javax.annotation.Resource;
-import javax.validation.Valid;
+import jakarta.annotation.Resource;
+import jakarta.validation.Valid;
 import java.lang.reflect.Field;
 import java.util.HashMap;
 import java.util.Map;
diff --git a/src/main/java/com/dji/sdk/cloudapi/storage/CredentialsToken.java b/src/main/java/com/dji/sdk/cloudapi/storage/CredentialsToken.java
index 93317b4..d52fd36 100644
--- a/src/main/java/com/dji/sdk/cloudapi/storage/CredentialsToken.java
+++ b/src/main/java/com/dji/sdk/cloudapi/storage/CredentialsToken.java
@@ -5,8 +5,8 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 import io.minio.credentials.Credentials;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
 
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/storage/StsCredentialsResponse.java b/src/main/java/com/dji/sdk/cloudapi/storage/StsCredentialsResponse.java
index 0821274..14cbe0f 100644
--- a/src/main/java/com/dji/sdk/cloudapi/storage/StsCredentialsResponse.java
+++ b/src/main/java/com/dji/sdk/cloudapi/storage/StsCredentialsResponse.java
@@ -4,9 +4,9 @@ import com.dji.sdk.common.BaseModel;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/storage/api/IHttpStorageService.java b/src/main/java/com/dji/sdk/cloudapi/storage/api/IHttpStorageService.java
index 602a8d2..c3f69b8 100644
--- a/src/main/java/com/dji/sdk/cloudapi/storage/api/IHttpStorageService.java
+++ b/src/main/java/com/dji/sdk/cloudapi/storage/api/IHttpStorageService.java
@@ -8,8 +8,8 @@ import io.swagger.v3.oas.annotations.media.Schema;
 import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.PostMapping;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/tsa/DeviceIconUrl.java b/src/main/java/com/dji/sdk/cloudapi/tsa/DeviceIconUrl.java
index 937cb4a..0690e2f 100644
--- a/src/main/java/com/dji/sdk/cloudapi/tsa/DeviceIconUrl.java
+++ b/src/main/java/com/dji/sdk/cloudapi/tsa/DeviceIconUrl.java
@@ -3,7 +3,7 @@ package com.dji.sdk.cloudapi.tsa;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/tsa/DeviceTopology.java b/src/main/java/com/dji/sdk/cloudapi/tsa/DeviceTopology.java
index 437783d..68775e7 100644
--- a/src/main/java/com/dji/sdk/cloudapi/tsa/DeviceTopology.java
+++ b/src/main/java/com/dji/sdk/cloudapi/tsa/DeviceTopology.java
@@ -3,8 +3,8 @@ package com.dji.sdk.cloudapi.tsa;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/tsa/TopologyDeviceModel.java b/src/main/java/com/dji/sdk/cloudapi/tsa/TopologyDeviceModel.java
index 770c28b..a66e6fc 100644
--- a/src/main/java/com/dji/sdk/cloudapi/tsa/TopologyDeviceModel.java
+++ b/src/main/java/com/dji/sdk/cloudapi/tsa/TopologyDeviceModel.java
@@ -7,7 +7,7 @@ import com.dji.sdk.cloudapi.device.DeviceTypeEnum;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/tsa/TopologyList.java b/src/main/java/com/dji/sdk/cloudapi/tsa/TopologyList.java
index 4f41c57..22b49e1 100644
--- a/src/main/java/com/dji/sdk/cloudapi/tsa/TopologyList.java
+++ b/src/main/java/com/dji/sdk/cloudapi/tsa/TopologyList.java
@@ -2,8 +2,8 @@ package com.dji.sdk.cloudapi.tsa;
 
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/tsa/TopologyResponse.java b/src/main/java/com/dji/sdk/cloudapi/tsa/TopologyResponse.java
index b3a2216..524d440 100644
--- a/src/main/java/com/dji/sdk/cloudapi/tsa/TopologyResponse.java
+++ b/src/main/java/com/dji/sdk/cloudapi/tsa/TopologyResponse.java
@@ -3,8 +3,8 @@ package com.dji.sdk.cloudapi.tsa;
 import com.dji.sdk.common.BaseModel;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/tsa/api/IHttpTsaService.java b/src/main/java/com/dji/sdk/cloudapi/tsa/api/IHttpTsaService.java
index 6e9a2d8..7cd2a5d 100644
--- a/src/main/java/com/dji/sdk/cloudapi/tsa/api/IHttpTsaService.java
+++ b/src/main/java/com/dji/sdk/cloudapi/tsa/api/IHttpTsaService.java
@@ -9,8 +9,8 @@ import io.swagger.v3.oas.annotations.tags.Tag;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PathVariable;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/wayline/ExecutableConditions.java b/src/main/java/com/dji/sdk/cloudapi/wayline/ExecutableConditions.java
index 768b301..f5e2f57 100755
--- a/src/main/java/com/dji/sdk/cloudapi/wayline/ExecutableConditions.java
+++ b/src/main/java/com/dji/sdk/cloudapi/wayline/ExecutableConditions.java
@@ -1,7 +1,7 @@
 package com.dji.sdk.cloudapi.wayline;
 
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskBreakPoint.java b/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskBreakPoint.java
index 69b2f9c..757f151 100755
--- a/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskBreakPoint.java
+++ b/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskBreakPoint.java
@@ -1,8 +1,8 @@
 package com.dji.sdk.cloudapi.wayline;
 
-import javax.validation.constraints.Max;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.Max;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskCreateFile.java b/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskCreateFile.java
index 271d2d4..2db2fcf 100755
--- a/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskCreateFile.java
+++ b/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskCreateFile.java
@@ -1,6 +1,6 @@
 package com.dji.sdk.cloudapi.wayline;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskCreateRequest.java b/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskCreateRequest.java
index c614c96..f6b4d53 100755
--- a/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskCreateRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskCreateRequest.java
@@ -2,9 +2,9 @@ package com.dji.sdk.cloudapi.wayline;
 
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskExecuteRequest.java b/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskExecuteRequest.java
index eddd18c..603a5c6 100644
--- a/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskExecuteRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskExecuteRequest.java
@@ -2,8 +2,8 @@ package com.dji.sdk.cloudapi.wayline;
 
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskFile.java b/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskFile.java
index 70837fc..1958571 100644
--- a/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskFile.java
+++ b/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskFile.java
@@ -1,6 +1,6 @@
 package com.dji.sdk.cloudapi.wayline;
 
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskPrepareRequest.java b/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskPrepareRequest.java
index 8c0f614..3c9e1ac 100755
--- a/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskPrepareRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskPrepareRequest.java
@@ -5,11 +5,11 @@ import com.dji.sdk.cloudapi.device.ExitWaylineWhenRcLostEnum;
 import com.dji.sdk.common.BaseModel;
 import com.dji.sdk.config.version.CloudSDKVersionEnum;
 
-import javax.validation.Valid;
-import javax.validation.constraints.Max;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.Max;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskResourceGetResponse.java b/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskResourceGetResponse.java
index 1a1f275..d595a50 100755
--- a/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskResourceGetResponse.java
+++ b/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskResourceGetResponse.java
@@ -2,8 +2,8 @@ package com.dji.sdk.cloudapi.wayline;
 
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskUndoRequest.java b/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskUndoRequest.java
index cf385df..3ea61a5 100644
--- a/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskUndoRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/wayline/FlighttaskUndoRequest.java
@@ -2,9 +2,9 @@ package com.dji.sdk.cloudapi.wayline;
 
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
-import javax.validation.constraints.Size;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
+import jakarta.validation.constraints.Size;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/wayline/GetWaylineListRequest.java b/src/main/java/com/dji/sdk/cloudapi/wayline/GetWaylineListRequest.java
index 8ea9c41..515a2e3 100644
--- a/src/main/java/com/dji/sdk/cloudapi/wayline/GetWaylineListRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/wayline/GetWaylineListRequest.java
@@ -4,9 +4,9 @@ import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.Parameter;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Size;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Size;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/wayline/GetWaylineListResponse.java b/src/main/java/com/dji/sdk/cloudapi/wayline/GetWaylineListResponse.java
index 8e856da..9ae543b 100644
--- a/src/main/java/com/dji/sdk/cloudapi/wayline/GetWaylineListResponse.java
+++ b/src/main/java/com/dji/sdk/cloudapi/wayline/GetWaylineListResponse.java
@@ -5,10 +5,10 @@ import com.dji.sdk.common.BaseModel;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Pattern;
-import javax.validation.constraints.Size;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Pattern;
+import jakarta.validation.constraints.Size;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/wayline/ReadyConditions.java b/src/main/java/com/dji/sdk/cloudapi/wayline/ReadyConditions.java
index 6194e8d..855d6f0 100755
--- a/src/main/java/com/dji/sdk/cloudapi/wayline/ReadyConditions.java
+++ b/src/main/java/com/dji/sdk/cloudapi/wayline/ReadyConditions.java
@@ -2,9 +2,9 @@ package com.dji.sdk.cloudapi.wayline;
 
 import com.dji.sdk.common.BaseModel;
 
-import javax.validation.constraints.Max;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.Max;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/wayline/SimulateMission.java b/src/main/java/com/dji/sdk/cloudapi/wayline/SimulateMission.java
index bf3c4bc..17af878 100644
--- a/src/main/java/com/dji/sdk/cloudapi/wayline/SimulateMission.java
+++ b/src/main/java/com/dji/sdk/cloudapi/wayline/SimulateMission.java
@@ -1,8 +1,8 @@
 package com.dji.sdk.cloudapi.wayline;
 
-import javax.validation.constraints.Max;
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.Max;
+import jakarta.validation.constraints.Min;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/wayline/WaylineUploadCallbackMetadata.java b/src/main/java/com/dji/sdk/cloudapi/wayline/WaylineUploadCallbackMetadata.java
index aa97993..819962d 100644
--- a/src/main/java/com/dji/sdk/cloudapi/wayline/WaylineUploadCallbackMetadata.java
+++ b/src/main/java/com/dji/sdk/cloudapi/wayline/WaylineUploadCallbackMetadata.java
@@ -4,8 +4,8 @@ import com.dji.sdk.cloudapi.device.DeviceEnum;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Size;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Size;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/cloudapi/wayline/WaylineUploadCallbackRequest.java b/src/main/java/com/dji/sdk/cloudapi/wayline/WaylineUploadCallbackRequest.java
index 87f8214..9f94715 100644
--- a/src/main/java/com/dji/sdk/cloudapi/wayline/WaylineUploadCallbackRequest.java
+++ b/src/main/java/com/dji/sdk/cloudapi/wayline/WaylineUploadCallbackRequest.java
@@ -3,8 +3,8 @@ package com.dji.sdk.cloudapi.wayline;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/wayline/api/AbstractWaylineService.java b/src/main/java/com/dji/sdk/cloudapi/wayline/api/AbstractWaylineService.java
index de59f19..6f7b3c3 100644
--- a/src/main/java/com/dji/sdk/cloudapi/wayline/api/AbstractWaylineService.java
+++ b/src/main/java/com/dji/sdk/cloudapi/wayline/api/AbstractWaylineService.java
@@ -22,7 +22,7 @@ import org.springframework.integration.annotation.ServiceActivator;
 import org.springframework.messaging.Message;
 import org.springframework.messaging.MessageHeaders;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/cloudapi/wayline/api/IHttpWaylineService.java b/src/main/java/com/dji/sdk/cloudapi/wayline/api/IHttpWaylineService.java
index 17fae68..2620054 100644
--- a/src/main/java/com/dji/sdk/cloudapi/wayline/api/IHttpWaylineService.java
+++ b/src/main/java/com/dji/sdk/cloudapi/wayline/api/IHttpWaylineService.java
@@ -12,11 +12,11 @@ import io.swagger.v3.oas.annotations.tags.Tag;
 import org.springdoc.api.annotations.ParameterObject;
 import org.springframework.web.bind.annotation.*;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Size;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotNull;
+import jakarta.validation.constraints.Size;
 import java.util.List;
 
 /**
diff --git a/src/main/java/com/dji/sdk/common/BaseModel.java b/src/main/java/com/dji/sdk/common/BaseModel.java
index 77ef2d0..8d4ea5b 100644
--- a/src/main/java/com/dji/sdk/common/BaseModel.java
+++ b/src/main/java/com/dji/sdk/common/BaseModel.java
@@ -6,9 +6,7 @@ import com.dji.sdk.exception.CloudSDKErrorEnum;
 import com.dji.sdk.exception.CloudSDKException;
 import org.springframework.util.CollectionUtils;
 
-import javax.validation.ConstraintViolation;
-import javax.validation.Validation;
-import javax.validation.Validator;
+import jakarta.validation.*;
 import java.lang.reflect.Field;
 import java.util.Arrays;
 import java.util.HashSet;
diff --git a/src/main/java/com/dji/sdk/config/GetSnakeDataBinder.java b/src/main/java/com/dji/sdk/config/GetSnakeDataBinder.java
index b14ab6b..bc41c74 100644
--- a/src/main/java/com/dji/sdk/config/GetSnakeDataBinder.java
+++ b/src/main/java/com/dji/sdk/config/GetSnakeDataBinder.java
@@ -7,7 +7,7 @@ import org.springframework.beans.MutablePropertyValues;
 import org.springframework.beans.PropertyValue;
 import org.springframework.web.servlet.mvc.method.annotation.ExtendedServletRequestDataBinder;
 
-import javax.servlet.ServletRequest;
+import jakarta.servlet.ServletRequest;
 import java.lang.reflect.Field;
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
diff --git a/src/main/java/com/dji/sdk/mqtt/MqttConfiguration.java b/src/main/java/com/dji/sdk/mqtt/MqttConfiguration.java
index 5855113..352b1f9 100644
--- a/src/main/java/com/dji/sdk/mqtt/MqttConfiguration.java
+++ b/src/main/java/com/dji/sdk/mqtt/MqttConfiguration.java
@@ -15,7 +15,7 @@ import org.springframework.integration.mqtt.support.MqttHeaders;
 import org.springframework.messaging.MessageChannel;
 import org.springframework.messaging.MessageHandler;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 import java.util.UUID;
 
 /**
diff --git a/src/main/java/com/dji/sdk/mqtt/MqttGatewayPublish.java b/src/main/java/com/dji/sdk/mqtt/MqttGatewayPublish.java
index f25155c..8ddd9d8 100644
--- a/src/main/java/com/dji/sdk/mqtt/MqttGatewayPublish.java
+++ b/src/main/java/com/dji/sdk/mqtt/MqttGatewayPublish.java
@@ -12,7 +12,7 @@ import org.springframework.messaging.MessageHeaders;
 import org.springframework.stereotype.Component;
 import org.springframework.util.StringUtils;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 import java.util.Objects;
 import java.util.UUID;
 import java.util.concurrent.CompletableFuture;
diff --git a/src/main/java/com/dji/sdk/mqtt/MqttTopicServiceImpl.java b/src/main/java/com/dji/sdk/mqtt/MqttTopicServiceImpl.java
index 158fa60..4e02f8a 100644
--- a/src/main/java/com/dji/sdk/mqtt/MqttTopicServiceImpl.java
+++ b/src/main/java/com/dji/sdk/mqtt/MqttTopicServiceImpl.java
@@ -5,7 +5,7 @@ import org.slf4j.LoggerFactory;
 import org.springframework.integration.mqtt.inbound.MqttPahoMessageDrivenChannelAdapter;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 import java.util.Arrays;
 import java.util.HashSet;
 import java.util.Set;
diff --git a/src/main/java/com/dji/sdk/mqtt/drc/DrcDownPublish.java b/src/main/java/com/dji/sdk/mqtt/drc/DrcDownPublish.java
index 25d643b..10e99de 100644
--- a/src/main/java/com/dji/sdk/mqtt/drc/DrcDownPublish.java
+++ b/src/main/java/com/dji/sdk/mqtt/drc/DrcDownPublish.java
@@ -4,7 +4,7 @@ import com.dji.sdk.mqtt.MqttGatewayPublish;
 import com.dji.sdk.mqtt.TopicConst;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 import java.util.Objects;
 
 /**
diff --git a/src/main/java/com/dji/sdk/mqtt/drc/DrcUpSubscribe.java b/src/main/java/com/dji/sdk/mqtt/drc/DrcUpSubscribe.java
index ef922f0..6dd16e1 100644
--- a/src/main/java/com/dji/sdk/mqtt/drc/DrcUpSubscribe.java
+++ b/src/main/java/com/dji/sdk/mqtt/drc/DrcUpSubscribe.java
@@ -5,7 +5,7 @@ import com.dji.sdk.mqtt.IMqttTopicService;
 import com.dji.sdk.mqtt.TopicConst;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 
 /**
  *
diff --git a/src/main/java/com/dji/sdk/mqtt/events/EventsRouter.java b/src/main/java/com/dji/sdk/mqtt/events/EventsRouter.java
index 0a6d50d..7cb2122 100644
--- a/src/main/java/com/dji/sdk/mqtt/events/EventsRouter.java
+++ b/src/main/java/com/dji/sdk/mqtt/events/EventsRouter.java
@@ -12,7 +12,7 @@ import org.springframework.integration.mqtt.support.MqttHeaders;
 import org.springframework.messaging.Message;
 import org.springframework.messaging.MessageHeaders;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 import java.io.IOException;
 import java.util.Arrays;
 import java.util.Objects;
diff --git a/src/main/java/com/dji/sdk/mqtt/events/EventsSubscribe.java b/src/main/java/com/dji/sdk/mqtt/events/EventsSubscribe.java
index 464727e..f7ef16f 100644
--- a/src/main/java/com/dji/sdk/mqtt/events/EventsSubscribe.java
+++ b/src/main/java/com/dji/sdk/mqtt/events/EventsSubscribe.java
@@ -5,7 +5,7 @@ import com.dji.sdk.mqtt.IMqttTopicService;
 import com.dji.sdk.mqtt.TopicConst;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 
 /**
  *
diff --git a/src/main/java/com/dji/sdk/mqtt/osd/OsdRouter.java b/src/main/java/com/dji/sdk/mqtt/osd/OsdRouter.java
index ff91e16..ed135f1 100644
--- a/src/main/java/com/dji/sdk/mqtt/osd/OsdRouter.java
+++ b/src/main/java/com/dji/sdk/mqtt/osd/OsdRouter.java
@@ -15,7 +15,7 @@ import org.springframework.integration.dsl.IntegrationFlows;
 import org.springframework.integration.mqtt.support.MqttHeaders;
 import org.springframework.messaging.Message;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 import java.io.IOException;
 import java.util.*;
 
diff --git a/src/main/java/com/dji/sdk/mqtt/osd/OsdSubscribe.java b/src/main/java/com/dji/sdk/mqtt/osd/OsdSubscribe.java
index 9d0a738..bc8fe51 100644
--- a/src/main/java/com/dji/sdk/mqtt/osd/OsdSubscribe.java
+++ b/src/main/java/com/dji/sdk/mqtt/osd/OsdSubscribe.java
@@ -6,7 +6,7 @@ import com.dji.sdk.mqtt.IMqttTopicService;
 import com.dji.sdk.mqtt.TopicConst;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 
 /**
  *
diff --git a/src/main/java/com/dji/sdk/mqtt/property/PropertySetPublish.java b/src/main/java/com/dji/sdk/mqtt/property/PropertySetPublish.java
index 2927c8b..cb926db 100644
--- a/src/main/java/com/dji/sdk/mqtt/property/PropertySetPublish.java
+++ b/src/main/java/com/dji/sdk/mqtt/property/PropertySetPublish.java
@@ -7,7 +7,7 @@ import com.dji.sdk.mqtt.MqttGatewayPublish;
 import com.dji.sdk.mqtt.TopicConst;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 import java.util.Objects;
 import java.util.UUID;
 import java.util.concurrent.CompletableFuture;
diff --git a/src/main/java/com/dji/sdk/mqtt/property/PropertySetReplyHandler.java b/src/main/java/com/dji/sdk/mqtt/property/PropertySetReplyHandler.java
index 11c171e..da2b8f6 100644
--- a/src/main/java/com/dji/sdk/mqtt/property/PropertySetReplyHandler.java
+++ b/src/main/java/com/dji/sdk/mqtt/property/PropertySetReplyHandler.java
@@ -10,7 +10,7 @@ import org.springframework.integration.annotation.ServiceActivator;
 import org.springframework.messaging.Message;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 import java.io.IOException;
 import java.util.Objects;
 
diff --git a/src/main/java/com/dji/sdk/mqtt/property/PropertySetSubscribe.java b/src/main/java/com/dji/sdk/mqtt/property/PropertySetSubscribe.java
index b17af53..88815d9 100644
--- a/src/main/java/com/dji/sdk/mqtt/property/PropertySetSubscribe.java
+++ b/src/main/java/com/dji/sdk/mqtt/property/PropertySetSubscribe.java
@@ -5,7 +5,7 @@ import com.dji.sdk.mqtt.IMqttTopicService;
 import com.dji.sdk.mqtt.TopicConst;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/mqtt/requests/RequestsRouter.java b/src/main/java/com/dji/sdk/mqtt/requests/RequestsRouter.java
index 045afcd..3b6c827 100644
--- a/src/main/java/com/dji/sdk/mqtt/requests/RequestsRouter.java
+++ b/src/main/java/com/dji/sdk/mqtt/requests/RequestsRouter.java
@@ -11,7 +11,7 @@ import org.springframework.integration.dsl.IntegrationFlow;
 import org.springframework.integration.dsl.IntegrationFlows;
 import org.springframework.messaging.MessageHeaders;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 import java.io.IOException;
 import java.util.Arrays;
 import java.util.Objects;
diff --git a/src/main/java/com/dji/sdk/mqtt/requests/RequestsSubscribe.java b/src/main/java/com/dji/sdk/mqtt/requests/RequestsSubscribe.java
index b207c53..bf9a8a9 100644
--- a/src/main/java/com/dji/sdk/mqtt/requests/RequestsSubscribe.java
+++ b/src/main/java/com/dji/sdk/mqtt/requests/RequestsSubscribe.java
@@ -5,7 +5,7 @@ import com.dji.sdk.mqtt.IMqttTopicService;
 import com.dji.sdk.mqtt.TopicConst;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/mqtt/services/ServicesPublish.java b/src/main/java/com/dji/sdk/mqtt/services/ServicesPublish.java
index 3e31d04..f7da5b8 100644
--- a/src/main/java/com/dji/sdk/mqtt/services/ServicesPublish.java
+++ b/src/main/java/com/dji/sdk/mqtt/services/ServicesPublish.java
@@ -9,7 +9,7 @@ import com.fasterxml.jackson.core.type.TypeReference;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 import java.util.Objects;
 import java.util.UUID;
 import java.util.concurrent.CompletableFuture;
diff --git a/src/main/java/com/dji/sdk/mqtt/services/ServicesReplyHandler.java b/src/main/java/com/dji/sdk/mqtt/services/ServicesReplyHandler.java
index 1ea2af3..9df904b 100644
--- a/src/main/java/com/dji/sdk/mqtt/services/ServicesReplyHandler.java
+++ b/src/main/java/com/dji/sdk/mqtt/services/ServicesReplyHandler.java
@@ -11,7 +11,7 @@ import org.springframework.integration.annotation.ServiceActivator;
 import org.springframework.messaging.Message;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 import java.io.IOException;
 import java.util.Objects;
 
diff --git a/src/main/java/com/dji/sdk/mqtt/services/ServicesSubscribe.java b/src/main/java/com/dji/sdk/mqtt/services/ServicesSubscribe.java
index 654ed4c..38a5717 100644
--- a/src/main/java/com/dji/sdk/mqtt/services/ServicesSubscribe.java
+++ b/src/main/java/com/dji/sdk/mqtt/services/ServicesSubscribe.java
@@ -5,7 +5,7 @@ import com.dji.sdk.mqtt.IMqttTopicService;
 import com.dji.sdk.mqtt.TopicConst;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 
 /**
  * @author sean
diff --git a/src/main/java/com/dji/sdk/mqtt/state/StateRouter.java b/src/main/java/com/dji/sdk/mqtt/state/StateRouter.java
index d146f47..ac6aacc 100644
--- a/src/main/java/com/dji/sdk/mqtt/state/StateRouter.java
+++ b/src/main/java/com/dji/sdk/mqtt/state/StateRouter.java
@@ -17,7 +17,7 @@ import org.springframework.integration.dsl.IntegrationFlows;
 import org.springframework.integration.mqtt.support.MqttHeaders;
 import org.springframework.messaging.Message;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 import java.io.IOException;
 import java.util.*;
 
diff --git a/src/main/java/com/dji/sdk/mqtt/state/StateSubscribe.java b/src/main/java/com/dji/sdk/mqtt/state/StateSubscribe.java
index f92128c..aa0d683 100644
--- a/src/main/java/com/dji/sdk/mqtt/state/StateSubscribe.java
+++ b/src/main/java/com/dji/sdk/mqtt/state/StateSubscribe.java
@@ -6,7 +6,7 @@ import com.dji.sdk.mqtt.IMqttTopicService;
 import com.dji.sdk.mqtt.TopicConst;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 
 /**
  *
diff --git a/src/main/java/com/dji/sdk/mqtt/status/StatusRouter.java b/src/main/java/com/dji/sdk/mqtt/status/StatusRouter.java
index 396bd2e..8aa9fe1 100644
--- a/src/main/java/com/dji/sdk/mqtt/status/StatusRouter.java
+++ b/src/main/java/com/dji/sdk/mqtt/status/StatusRouter.java
@@ -15,7 +15,7 @@ import org.springframework.messaging.Message;
 import org.springframework.messaging.MessageHeaders;
 import org.springframework.util.CollectionUtils;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 import java.io.IOException;
 import java.util.Objects;
 import java.util.Optional;
diff --git a/src/main/java/com/dji/sdk/mqtt/status/StatusSubscribe.java b/src/main/java/com/dji/sdk/mqtt/status/StatusSubscribe.java
index c4571d5..3fdae6d 100644
--- a/src/main/java/com/dji/sdk/mqtt/status/StatusSubscribe.java
+++ b/src/main/java/com/dji/sdk/mqtt/status/StatusSubscribe.java
@@ -6,7 +6,7 @@ import com.dji.sdk.mqtt.IMqttTopicService;
 import com.dji.sdk.mqtt.TopicConst;
 import org.springframework.stereotype.Component;
 
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
 
 /**
  *
diff --git a/src/main/java/com/dji/sdk/websocket/WebSocketMessageResponse.java b/src/main/java/com/dji/sdk/websocket/WebSocketMessageResponse.java
index 816d555..3521ff4 100644
--- a/src/main/java/com/dji/sdk/websocket/WebSocketMessageResponse.java
+++ b/src/main/java/com/dji/sdk/websocket/WebSocketMessageResponse.java
@@ -3,8 +3,8 @@ package com.dji.sdk.websocket;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import io.swagger.v3.oas.annotations.media.Schema;
 
-import javax.validation.constraints.Min;
-import javax.validation.constraints.NotNull;
+import jakarta.validation.constraints.*;
+
 
 /**
  * The format of WebSocket messages that the pilot can receive.