MyBatis définit et utilise des instructions SQL dans des fichiers XML, mais
<select id="hoge" resultType="hoge">
SELECT
*
FROM
HOGE
WHERE
HOGE.HOGE_DATE < SYSDATE
</select>
La clause WHERE qui utilise le nombre d'inégalité se met en colère.
Cause: org.xml.sax.SAXParseException; lineNumber: XX; columnNumber: XX;Le contenu de l'élément doit être constitué de données de caractères ou de balises bien formées.
La méthode de clôture de la pièce en utilisant le nombre d'inégalité avec <![CDATA [...]]>.
<select id="hoge" resultType="hoge">
SELECT
*
FROM
HOGE
WHERE
HOGE_DATE <![CDATA[ < ]]> SYSDATE
</select>
Il était normal d'inclure la clause SELECT entière comme dans l'exemple ci-dessous. Celui-ci est plus lisible. (Je ressens.)
<select id="hoge" resultType="hoge">
<![CDATA[
SELECT
*
FROM
HOGE
WHERE
HOGE_DATE < SYSDATE
]]>
</select>
Il s'agit d'une méthode utilisant la référence d'entité fournie dans le commentaire. Après quelques recherches, il semble qu'il existe les 5 types suivants.
lettre | Référence d'entité |
---|---|
< | < |
> | > |
& | & |
'(Devis unique) | ' |
"(Double devis) | " |
Décrit à l'aide d'une référence d'entité, cela ressemble à ceci:
<select id="hoge" resultType="hoge">
SELECT
*
FROM
HOGE
WHERE
HOGE_DATE < SYSDATE
</select>
J'ai touché MyBatis pour la première fois, mais c'est pratique car je peux l'utiliser simplement en copiant et en appelant le SQL dont le fonctionnement a été confirmé. Le document officiel MyBatis a été traduit en japonais, et la quantité d'informations est abondante, il est donc facile à utiliser. Le SQL dynamique tel que if, choose et foreach sera résumé à une date ultérieure.
MyBatis - MyBatis 3 | Fichier XML du mappeur Référence de caractère et référence d'entité [norme XML]
Recommended Posts