簡體   English   中英

如何從 json 發送 Java Long 值

[英]How to send a Java Long value from json

我正在嘗試向帶有請求正文的 Spring RestController 發送 POST 請求。 在對象中有一個 Long 值,但它沒有與其他參數一起到達端點。 用作@RequestBody的類是這樣的:

@Entity
public class Curso {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "id")
    private Long id;
    @Column(name = "titulo")
    private String titulo;
    @Column(name = "nivel")
    private String nivel;
    @Column(name = "nhoras")
    private String nhoras;
    @Column(name = "profesorid")
    private Long profesorid;
    [...]
    public Long getProfesorid() {
        return profesorid;
    }
    public void setProfesorid(Long profesor) {
        this.profesorid = profesorid;
    }
}

@RestController注釋的類中的端點是這樣的:

    @RequestMapping(value = "/crear-curso", method = RequestMethod.POST)
    public void addCurso(@RequestBody Curso curso) {
        cursoService.addCurso(curso);
    }

這是我在 POST 請求正文中使用的 JSON:

{
    "titulo": "Git",
    "nivel": "Intermedio",
    "nhoras": "12",
    "profesorid": 1581068174
}

所有其他參數都正確到達並且對象到達數據庫,但profesorid值。 我停止了這個addCurso方法的執行, profesorid 的值為空。 id值沒有在請求中發送,因為它是在保存到數據庫之前設置的。 請,任何人都可以幫助我並說出這里失敗的原因? 提前謝謝了。

public void setProfesorid(Long profesor) {
    this.profesorid = profesorid;
}

看看這個二傳手。 你在這里犯了一個錯誤。

它應該是

public void setProfesorid(Long profesor) {
    this.profesorid = profesor;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM