All Downloads are FREE. Search and download functionalities are using the official Maven repository.

de.svws_nrw.db.converter.current.GeschlechtConverterFromString Maven / Gradle / Ivy

Go to download

Diese Bibliothek regelt den Zugriff auf Datenbanken für die Schulverwaltungssoftware in NRW

There is a newer version: 1.0.1
Show newest version
package de.svws_nrw.db.converter.current;

import jakarta.persistence.Converter;
import de.svws_nrw.core.types.Geschlecht;
import de.svws_nrw.db.converter.DBAttributeConverter;


/**
 * Diese Klasse dient dem Konvertieren von Geschlechtern in Java (Value)
 * zu einer String-Darstellung in der Datenbank. Dies String Darstellung stellt
 * hier aber lediglich die Zahldarstellung (siehe {@link Geschlecht#id})
 * als String dar.
 * Sie ist abgeleitet von der Basisklasse {@link DBAttributeConverter}, welche
 * die grundlegende Funktionalität von Konvertern zur Verfügung stellt. Dort muss
 * der Konverter auch in der Methode {@link DBAttributeConverter#getByClass}
 * registriert werden.
 */
@Converter
public final class GeschlechtConverterFromString extends DBAttributeConverter {

	/** Die Instanz des Konverters */
	public static final GeschlechtConverterFromString instance = new GeschlechtConverterFromString();

	@Override
	public String convertToDatabaseColumn(final Geschlecht geschlecht) {
		return "" + geschlecht.id;
	}

	@Override
	public Geschlecht convertToEntityAttribute(final String dbData) {
		if (dbData == null)
			return Geschlecht.X;
		try {
			return Geschlecht.fromValue(Integer.parseInt(dbData));
		} catch (@SuppressWarnings("unused") final NumberFormatException e) {
			return Geschlecht.X;
		}
	}

	@Override
	public Class getResultType() {
		return Geschlecht.class;
	}

	@Override
	public Class getDBType() {
		return String.class;
	}

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy