Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie ordne ich einen Zeitstempel für den Ruhezustand einem MySQL BIGINT zu?

Sehen Sie sich auch das Erstellen einer benutzerdefinierten Hibernate Type-Implementierung an. Etwas in der Art von (Psuedocode, da ich keine praktische Umgebung habe, um es kugelsicher zu machen):

public class CalendarBigIntType extends org.hibernate.type.CalendarType {
    public Object get(ResultSet rs, String name) {
        return cal = new GregorianCalendar(rs.getLong(name));
    }
    public void set(PreparedStatement stmt, Object value, int index) {
        stmt.setParameter(index, ((Calendar) value).getTime());
    }
}

Anschließend müssen Sie Ihr neues Objekt mithilfe einer Hibernate-TypeDef und Type-Mappings zuordnen. Wenn Sie Hibernate-Anmerkungen verwenden, sollte dies in etwa so sein:

@TypeDef (name="bigIntCalendar", typeClass=CalendarBigIntType.class)
@Entity
public class MyEntity {
    @Type(type="bigIntCalendar")
    private Calendar myDate;
}