我将请求正文中的日期发送到 REST API post 请求,但是在检查 table 中插入的记录时,正在插入时间戳

I am sending Date in the request Body to a REST API post request, but on checking the record inserted in the table, Timestamp is getting inserted

我正在尝试通过 POST 方法 POST 传递请求正文来将某些字段插入 table

 {
        "sbcVin": "888888",
        "truckIdNum": "222222",
        "toWhen": "02-08-2021",
        "fromWhen": "20-08-2021"
    }

也插入了数据,但在检查 toWhen 和 FromWhen 列的记录时,我可以看到也插入了一些随机时间。哪个不应该在那里。 在我的 pojo 中,我已将上面两列声明为 Date(SQL) 数据类型。 下面是pojo。

@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "abc")
@SequenceGenerator(name = "abc", sequenceName = "type9", allocationSize = 1)
private int fkeyId;


@Column(name = "SBC_VIN")
private String sbcVin;

@Column(name = "TRUCK_ID_NUM")
private String truckIdNum;


@Column(name = "TO_WHEN")
private Date toWhen;


@Column(name = "FROM_WHEN")
private Date fromWhen;

--- getters and setters

public Date getToWhen() {
        return toWhen;
    }

    public void setToWhen(Date toWhen) {
        this.toWhen = toWhen;
    }

    public Date getFromWhen() {
        return fromWhen;
    }

    public void setFromWhen(Date fromWhen) {
        this.fromWhen=fromWhen;
        
    }


--Controller
@PostMapping("/create")
    public Type create(@RequestBody Type body) {
        String vehicle = body.getVehicle();
        String unit = body.getUnit();

        vehicleList = getVehicleList();
        unitList = getGpsUnit();

        if (vehicleList.contains(vehicle) && unitList.contains(unit)) {
            return repo.save(body);
--------

数据保存在数据库中

02-AUG-2021 05:30:00        20-AUG-2014 05:30:00 --((( i am not supplying this 5:30 anywhere))

预期要保存的数据

02-AUG-2021     20-AUG-2014 ( with out any time stamp)

问题-> 1)为什么以及从哪里生成时间戳,因为我没有在正文中提供它,也没有在 POJO 中设置它。 2) 我曾经想过使用 java.sql 中的 Date 我们只得到 Date ,对于时间戳我们必须使用 java.sql.TimeStamp 或 Time.( 我的理解是否正确,如果是,为什么 Class 给我们时间戳的日期。)

提前感谢您的帮助。 :)

我猜,存储在您数据库中的日期是 02-AUG-2021 00:00:00(UTC)和 20-AUG-2014 00:00:00(UTC)。由于您的时区是 +0530,印度时区的时间显示为 02-AUG-2021 05:30:0020-AUG-2014 05:30:00

看,如果您的数据库有任何数据类型只能存储 Date,例如 mysql 的 Date,或者您可以存储纯字符串。