Det är inte möjligt i MyBatis (åtminstone version 3) direkt.
MyBatis har automatisk mappning vid läsning av data från databas men har inte möjlighet att automatiskt mappa fält vid infogning.
Anledningen till detta är att MyBatis är väldigt SQL-centrerad vilket innebär att du måste skriva SQL manuellt. Det är möjligt att ha implicita fält i SQL select-satsen (select * from table
) så det finns automatisk mappning till POJO i det här fallet, men det är inte möjligt att uppdatera eller infoga implicita fält, därför ingen automatisk mappning.
MyBatis kan förlängas av orsak. Du kan till exempel använda @InsertProvider
/@UpdateProvider
med sql-generatorn som genererar sql med hjälp av reflektion för att få objektfält.