当前位置: 首页 > 知识库问答 >
问题:

[未能将类型“java.lang.String”的属性值转换为所需类型“java.sql.time”。

聂煜
2023-03-14

当我试图将表单发送到我的控制器时,我出现了一个错误,我出现了这个错误:

[未能将字段“heure处女作”上类型“java.lang.string”的属性值转换为所需类型“java.sql.time”“horaire”:拒绝值[10:00];代码[typemismatch.horaire.heurediffect,typemismatch.heurediffect,typemismatch.java.sql.time,typemismatch.java.sql.time]

这是我的实体:

@Entity(name = "horaire")
public class Horaire {

    @Id @GeneratedValue
    @Column(name = "idhoraire")
    private Integer id;
    @Column(name = "heure_debut")
    private Time heureDebut;
    @Column(name = "heure_fin")
    private Time heureFin;


    public Horaire() {
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Time getHeureDebut() {
        return heureDebut;
    }

    public void setHeureDebut(Time heureDebut) {
        this.heureDebut = heureDebut;
    }

    public Time getHeureFin() {
        return heureFin;
    }

    public void setHeureFin(Time heureFin) {
        this.heureFin = heureFin;
    }

    @Override
    public String toString() {
        return "Horaire{" +
                "id=" + id +
                ", heureDebut=" + heureDebut +
                ", heureFin=" + heureFin +
                '}';
    }
}

这是我在控制器中的方法

@GetMapping("/save")
public String saveHoraire(@Valid Horaire horaire) {

    horaireRepository.save(horaire);

    return "redirect:listeHoraire";

}

这是我的模板:

<form th:action="@{save}" method="get"  th:object="${horaire}">
    <input type="text"  th:field="*{id}">
    <input type="time"  th:field="*{heureDebut}">
    <input type="time"  th:field="*{heureFin}">
    <input type="submit" value="valider"/>
</form>

共有1个答案

徐奇
2023-03-14

在实体类中使用java.util.Date,如下所示,并在数据库中使用datetime。

@Column(name = "heure_debut")
@Temporal(TemporalType.TIMESTAMP)
private Date heureDebut;

@Column(name = "heure_fin")
@Temporal(TemporalType.TIMESTAMP)
private Date heureFin;

并使用SimpleDateFormat将string转换为Date对象

String text = "25/02/1992";
Date date = new SimpleDateFormat("DD/MM/YYYY").parse(text);
 类似资料:
  • 我想在json中以的形式发布上面的字符串日期,但我收到了400个错误请求。有人能帮忙吗。我使用过,但它也没有帮助我。

  • 我有两个实体,它们使用一个主键互相引用,主键是一个实体的整数。我不确定我做这件事的方式是否正确。 下面是引用主键id为int的实体 下面是我们从上面的实体中将外键设置为Kmichango kandaMchango的实体。 这里是表单的一部分,我在这里提交了用户在jumuiya_michango_form.html中提供的数据 下面是我的控制器中用于链接到表单和发布数据的两个方法 在我提交表单后,我

  • org.springframework.beans.ConversionNotSupportedException:未能将类型“java.lang.long”的属性值转换为属性“card”所需的类型“card”;嵌套异常是java.lang.IllegalStateException:无法将类型“java.lang.Long”的值转换为属性“Card”所需的类型“Card”:找不到匹配的编辑器或转

  • 我不确定我是否错过了一些真正基本的东西,但这是我想做的。 我想对这个地址进行rest API调用: https://localhost:8080/fetchlocation?lat=-26.2041028和lng=28.0473051和radius=500 我想这是因为当我进行GET调用时,rest API接收的坐标是字符串而不是long。我如何确保rest API在调用时得到的是长值而不是字符串

  • 我正在处理一个Spring批量需求。在我的项目中,我在一个单独的util包中编写了一个转换器类作为实用程序类。我正在读写到MySQL数据库的CSV文件。 [未能将类型“java.lang.String”的属性值转换为属性“id_type”所需的类型“java.lang.Integer” 在我的模型类中,id_type是Integer类型,那么为什么它说“未能将属性值字符串转换为Integer?”

  • 我正在关注Spring in Action 5,在按下提交按钮后创建Taco模型时遇到问题。这是我的设计Taco控制器类: 以及我捕获的错误消息: 炸玉米饼实体如下所示: 以及我的配料实体: 这是一个html页面,必须使用所选成分创建新的Taco对象: 我该怎么修理它?谢谢你的预付款。

  • 我是Spring MVC的新手,试图构建一个示例应用程序,我试图将数据保存到一个名为EmployeeDetails的表中,该表与表用户有一对一的关系。提交表单后,我在字段“user”的对象“employee details”中得到了这个错误字段:rejected value[Users];代码[typemismatch.employeeDetails.user,typemismatch.user,

  • 我是SpringMVC的新手。我开发了一个执行选择,插入,更新和删除的示例应用程序。 下面是我的Bean类 下面是我的控制器类 下面是我的JSP页面 现在我面临两个问题。输入值并单击“添加学生”按钮后,收到以下错误。