sql >> Databasteknik >  >> RDS >> Mysql

Hur man infogar ett objekt (mer än 10 egenskaper) i mysql via mybatis baserat på anteckning utan lista alla egenskaper

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.




  1. Hur man infogar ett mycket stort antal poster i en MySql-databas så snabbt som möjligt

  2. MySQL:Slå samman två olika tabeller utan JOIN eller UNION

  3. UTF-8-databasproblem

  4. Hur Coalesce() fungerar i SQLite