Ich entwickle einen Bet-Service mit Java und MySql mit Spring und Hibernate, aber ich habe eine Frage zu einer Abbildung:MySQL-Mapping null boolean zu Java mit Hibernate
In meiner Datenbank habe ich bet types
(Fragen) wie : Wer wird das Spiel gewinnen? und bet options
für jeden Typ wie: 1, X, 2. Jede Option hat einen booleschen Indikator um anzuzeigen, ob eine Option eine Gewinneroption ist oder nicht. So ist die Abbildung in MySql für dieses Attribut ein boolean wie folgt aus: 1
, wenn die Option Gewinner ist, 0
, wenn die Option lockerer ist und null
, wenn die Option nicht, ist aber weder Gewinner oder Verlierer
Also, in meinem Dienst layer, wie kann ich überprüfen, ob das Attribut winner in einer Option null ist? Ich habe versucht option.getIsWinner() != null
, aber Boolean ist ein primitiver Typ, so dass es null sein kann. Irgendeine Idee dazu?
Danke.
Hallo, danke für deine Antwort. Also muss ich "@Type (type =" java.lang.Boolean ")" Annotation in meinem Getter angeben, um einen booleschen Typ aus der Datenbank in Hibernate zu erhalten? –
Ich glaube nicht, dass Sie eine @Type-Deklaration benötigen, aber Sie müssen den Typ Ihrer Variablen von (zum Beispiel) 'private boolean option' in' private Boolean option' ändern. Es wird auch einige Nebenwirkungen Ihrer Interaktion mit dieser Eigenschaft geben - Sie müssen zum einen nach Nullen suchen. – Fiid
Ja, das habe ich schon gemacht. Ok, danke für deine Zeit! –