Ich werde den Mechanismus (Zuordnung) erläutern, der den Tabellenspaltennamen mit dem Feldnamen verknüpft, der im Code in MyBatis verwendet wird.
Es gibt vier Arten von Zuordnungsmethoden. Im Feld wählen Sie eine davon aus.
Die Standardeinstellung von MyBatis lautet "Unterschied zwischen Klein- und Großbuchstaben und Assoziieren ignorieren".
Die folgenden Beispiele werden automatisch zugeordnet und funktionieren.
Beispiel: (Tabellenspaltenname) A_COLUMN → (Feldname) a_column oder a_Column
Beschreiben Sie beim Schreiben einer SQL-Anweisung die Entsprechung in der AS-Klausel.
SQL-Anweisung
SELECT
A_COLUMN AS "aColumn",
B_COLUMN AS "bColumn",
FROM
MY_TABLE
WHERE
A_COLUMN = "test"
Feldname
Public Class myTableDto {
String aColumn;
String bColumn;
}
In der Konfigurationsdatei (zB mybatis-config.xml)
mybatis-config.xml
<settings>
<setting name="mapUnderscoreToCamelCase" value="true"/>
</settings>
Wenn Sie angeben, entspricht der Spaltenname mit Unterstrich automatisch dem Kamelfall (das erste des zweiten Wortes wird groß geschrieben).
Beispiel: (Tabellenspaltenname) ADD_COLUMN → (Feldname) @ Spalte
Verwenden Sie in der aus der Konfigurationsdatei aufgerufenen Mapper-Datei das resultMap-Tag, um die Korrespondenz zu beschreiben.
testMapper.xml
<mapper namespace="org.apache.ibatis.example.Mapper">
<resultMap type="org.apache.ibatis.example.dto.myTableDto" id="testmap">
<result column="A_COLUMN" property="aColumn"/>
<result column="B_COLUMN" property="bColumn"/>
</resultMap>
<select id="getAll" resultMap="testmap">
SELECT * FROM MY_TABLE
</select>
</mapper>
Persönlich möchte ich vielleicht in eine AS-Klausel schreiben, die es leicht macht zu sehen, ob es beim Betrachten der SQL-Anweisung Auslassungen gibt.
Recommended Posts