Я хотел бы сохранить LocalDate
в Hibernate
как Date
, но я не могу найти его даже в документации Hibernate. Я пробовал один раз, но он хранится как тип blob.Как сохранить LocalDate в Hibernate как тип даты
Вот моя сущность билетов:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" >
<hibernate-mapping package="com.clustertech.entity">
<class name="Ticket" table="ticket">
<id name="id" type="int" column="id">
<generator class="native" />
</id>
<property name="date" column="tb_date" type="date" length="35"/>
<property name="topic" column="tb_topic" type="string" length="35"/>
<property name="subject" column="tb_subject" type="string" length="35"/>
<property name="status" column="tb_status" type="string" length="35"/>
<property name="message" column="tb_message" type="string" length="255"/>
<many-to-one name="person" column="person_id"/>
</class>
</hibernate-mapping>
А вот мой класс сущностей:
public class Ticket implements Comparable<Ticket> {
private int id;
private LocalDate date;
private String topic;
private String Subject;
private String message;
private String status;
private Person person;
}
Он имеет методы получения и установки, как обычный класс POJO. Я видел на других сайтах один способ сделать это, но они используют анотации. Я хотел бы что-то подобное, но я не использую anotations только обычный класс POJO и файлы hbm.xml
. Я уверен, что мне нужно создать другой класс, чтобы преобразовать LocalDate
в Date
, но я не знаю, как связать этот класс с моей сущностью.
Я попробовал, но у меня есть эта ошибка Не удалось определить тип для: com.clustertech.entity.TypeConverter, за таблицей: билет, для столбцов: [org.hibernate.mapping.Column (tb_date)]. Я не знаю, что произошло, я сделал именно то, что вы написали. Я что-то пропустил? Кажется, что Hibernate не смог найти класс конвертера, когда он начинался. – yfabio
Попробуйте добавить конвертер