使用Struts 2的错误的Hibernate类型映射

问题描述 投票:0回答:1

我在带有Hibernate的Struts 2中有一个示例应用程序。我开始从Struts 2测试日期选择器,但是由于某种原因,即使Java代码将其视为bytea(因为Struts 2将其作为字符串返回),后来又保存为String,它也保存为LocalDate ]。

这正在数据库(PostgreSQL)上发生:

result on database

我有一个DTO的UserPOJO类:

public class UserPOJO {
    private String name;
    private String password;
    private String email;
    private String cargo;
    private String nasc;

然后,在User构造函数上,将其转换为LocalDate

public User(UserPOJO pojo) {
        this.name = pojo.getName();
        this.password = pojo.getPassword();
        this.email = pojo.getEmail();
        String s = pojo.getNasc().substring(0,10);
        this.nasc = LocalDate.parse(s);
        this.cargo = new Cargo();
        this.cargo.setId(Integer.parseInt(pojo.getCargo()));
    }

当我从数据库中检索数据以在屏幕上显示时,它可以正常工作。但是我不知道为什么将其另存为bytea,以及为什么它可用于检索数据。我想将其另存为数据库中的date

我正在使用Java 8,Struts 2.3.15.1,Hibernate 4.3.5.Final,PostgreSQL 11和Struts 2 DOJO插件2.3.4.1。

java hibernate struts2 hibernate-mapping
1个回答
0
投票

在数据库中,数据类型已更改为日期。检查是否有效。

© www.soinside.com 2019 - 2024. All rights reserved.