Sto tentando di utilizzare java.util.Optional
in alcune classi persistenti. C'è qualche soluzione per farlo funzionare? Ho provato a utilizzare UserType, ma non è possibile gestire qualcosa come Opzionale senza mapparlo manualmente a mano (non accettabile) Ho anche provato a utilizzare il convertitore JPA, ma non supporta i tipi parametrizzati. ho potuto utilizzare il confezionamento getter e setter come, ma è più simile a un hack che una soluzioneHibernate ORM - supporto Java 1.8 Opzionale per le proprietà dell'entità
public class MyClass {
private MyOtherClass other;
public Optional<MyOtherClass> getOther() {
return Optional.ofNullable(other);
}
public voud setOther(Optional<MyOtherClass> other) {
this.other = other.orElse(null);
}
}
Grazie!
Ho visto questo e devo proprio dire che mai e poi mai dovrebbe usare Extra in attributi solo come valore di ritorno dei metodi. – dom
ho visto questo e devo proprio dire che puoi usare facoltativo ogni volta che vuoi evitare "null" nella tua base di codice finché ti senti a tuo agio con esso e anche se tutti continuano a ripetere l'architetto del linguaggio che non vuole avere " monadic-ish "composizione di" optionalità "nella libreria principale a favore di insistere sull'uso di Hoars per un errore di 1 miliardo di dollari. Assicurati solo di salvaguardare le librerie/le apis esterne "che vengono in giro con oggetti nulli e starai bene. – dwegener