弹簧控制器休息呼叫失败

时间:2015-03-08 22:21:24

标签: java spring rest

我正在休息调用Spring Controller,但未能通过BAD请求(400原因,原始问题Spring Controller 400 (Bad Request)

我的初始休息参数是:

categoty: "Game"
itemDescription: "adas"
itemDiscount: 1
itemName: "asdas"
itemPrice: 1
itemQuantity: 1

此操作失败,但当我更改下面的参数时,它可以工作:

categoty: "Game"
description: "test1"
discount: 10
name: "Test"
price: 10
quantity: 10

我的持久性POJO课程是:

import javax.persistence.*;  

@Entity  
@Table(name= "Item")
public class Item {

    @Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    @Column(name="id")
    private int id; 
    private String itemName,itemDescription,categoty;   
    private double itemPrice;
    private float itemDiscount;
    private int itemQuantity;


    public int getId() {  
        return id;  
    }  
    public void setId(int id) {  
        this.id = id;  
    }  

    public int getQuantity() {  
        return itemQuantity;  
    }  
    public void setQuantity(int quantity) {  
        this.itemQuantity = quantity;  
    }  

    public float getDiscount() {  
        return itemDiscount;  
    }  
    public void setDiscount(float discount) {  
        this.itemDiscount = discount;  
    }  

    public double getPrice() {  
        return itemPrice;  
    }  
    public void setPrice(double price) {  
        this.itemPrice = price;  
    }  
    public String getName() {  
        return itemName;  
    }  
    public void setName(String iName) {  
        this.itemName = iName;  
    }  
    public String getDescription() {  
        return itemDescription;  
    }  
    public void setDescription(String desc) {  
        this.itemDescription = desc;  
    }  
    public String getcategoty() {  
        return categoty;  
    }  
    public void setcategoty(String cat) {  
        this.categoty = cat;  
    }  


}

有人可以帮助我理解为什么第二种类型的参数有效,而第一种参数没有(理想情况下,第一种是一对一映射到持久性类中的属性)?

2 个答案:

答案 0 :(得分:0)

它与getter和setter相同,它从所有变量中删除了前缀名称,请检查以下链接:

答案 1 :(得分:0)

Spring调用Entity类的setter。 (属性quantity - > setQuantity(String) - 它不会查看您的成员姓名(例如itemQuantity)。

但是:像你的成员一样命名setter / getter总是一个好主意。您应该重命名您的成员以匹配getter和setter。这使得它更加清晰。

除此之外,getcategotysetcategoty应重命名为驼峰式getCategorysetCategory。顺便说一句:categoty

category的拼写错误