通過RestController裏面的方法,改變UDP接收到的結構體裏面的數據InputStruct

我有一個java的springboot程序,裏面包括一個UDP監聽程序,監聽來自第三方UDP發送程序。第三方UDP發送過來的是一個結構體,我在本地程序也建立一個結構體InputStruct來接收數據,現在,我也想通過RestController裏面的方法,改變UDP接收到的結構體裏面的數據InputStruct,請幫助我給出示例代碼。


public class UDPListener {
    private static InputStruct inputStruct = new InputStruct();

    public static void listen() throws IOException {
        // UDP監聽代碼
        // 將接收到的數據存儲到inputStruct中
        // 可以使用inputStruct的setter方法來修改其中的數據
    }

    public static InputStruct getInputStruct() {
        return inputStruct;
    }
}

@RestController
public class MyController {
    @GetMapping("/input-struct")
    public InputStruct getInputStruct() {
        return UDPListener.getInputStruct();
    }

    @PostMapping("/input-struct")
    public void setInputStruct(@RequestBody InputStruct inputStruct) {
        UDPListener.getInputStruct().setXXX(inputStruct.getXXX()); // 這裏使用inputStruct的getter方法獲取需要修改的數據,並使用靜態變量中的setter方法來修改
    }
}

在上述代碼中,/input-struct是一個GET請求,用於獲取當前存儲在靜態變量中的InputStruct數據。/input-struct是一個POST請求,用於修改存儲在靜態變量中的InputStruct數據。@RequestBody註解用於將請求體中的JSON數據映射爲InputStruct對象。在setInputStruct方法中,使用InputStruct的getter方法獲取需要修改的數據,並使用靜態變量中的setter方法來修改。

--frome chatgpt

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章