Cet article vous présente principalement les informations pertinentes sur la configuration dans mybatis. L'article le présente en détail à travers un exemple de code, qui a une certaine valeur de référence et d'apprentissage pour tous les amis qui en ont besoin peuvent y jeter un œil ci-dessous.
Dans mybaits, les paramètres de configuration de réglage sont les suivants (s'ils ne sont pas configurés dans le fichier de configuration , la valeur par défaut sera utilisée) :
Définir les paramètres | Description | Valeurs valides | Valeur par défaut | ||
cacheEnabled | Commutateur global pour le cache configuré dans tous les mappeurs concernés par cette configuration | true | false | true | ||
lazyLoadingEnabled | Commutateur global pour un chargement paresseux. Lorsqu'il est activé, tous les objets associés seront chargés paresseusement. Dans une association spécifique, l'état de commutation de l'élément peut être remplacé en définissant l'attribut fetchType | true | false | false | ||
agressifLazyLoading | Lorsqu'il est activé, les appels à n'importe quel attribut paresseux entraîneront le chargement complet des objets avec des attributs de chargement paresseux, sinon chaque attribut sera chargé à la demande ; | true | false | true | ||
multipleResultSetsEnabled | Autoriser ou non une seule instruction à renvoyer plusieurs ensembles de résultats (nécessite un pilote compatible ). | true | false | true | ||
useColumnLabel | Utilisez des étiquettes de colonne au lieu des noms de colonnes. Différents pilotes auront des performances différentes à cet égard. Pour plus de détails, vous pouvez vous référer à la documentation du pilote concerné ou observer les résultats du pilote utilisé en testant ces deux modes différents. | true | false | true | ||
useGeneratedKeys | Permet à JDBC de prendre en charge la génération automatique de clés primaires et nécessite la compatibilité des pilotes. S'il est défini sur true, ce paramètre force l'utilisation de clés primaires générées automatiquement, qui fonctionneront même si certains pilotes sont incompatibles (par exemple Derby). | true | false | False | ||
autoMappingBehavior | Spécifie comment MyBatis doit automatiquement mapper les colonnes aux champs ou aux propriétés. NONE signifie annuler le mappage automatique ; PARTIAL mappera automatiquement uniquement les jeux de résultats qui ne définissent pas le mappage des jeux de résultats imbriqués. FULL mappe automatiquement des ensembles de résultats arbitrairement complexes (imbriqués ou non). | AUCUN, PARTIEL, COMPLET | PARTIEL | ||
defaultExecutorType | Configurez l'exécuteur par défaut. SIMPLE est un exécuteur ordinaire ; l’exécuteur REUSE réutilisera les instructions préparées ; l’exécuteur BATCH réutilisera les instructions et effectuera des mises à jour par lots. | LOT DE RÉUTILISATION SIMPLE | SIMPLE | ||
defaultStatementTimeout | Définissez le délai d'attente, qui détermine le nombre de secondes pendant lesquelles le conducteur attend un réponse de la base de données. | Tout entier positif | Non défini (null) | ||
defaultFetchSize | Définit un indice au pilote quant à contrôler la taille de récupération des résultats retour, cette valeur de paramètre peut être remplacée par un paramètre de requête. | Tout entier positif | Non défini (null) | ||
safeRowBoundsEnabled | Autorise l'utilisation de la pagination (RowBounds) dans les instructions imbriquées. | true | false | False | ||
mapUnderscoreToCamelCase | S'il faut activer la règle de dénomination automatique des cas de chameaux (cas de chameaux) , c'est-à-dire du mappage similaire classique du nom de colonne de base de données A_COLUMN au nom de propriété Java classique aColumn. | true | false | False | ||
localCacheScope | MyBatis utilise le mécanisme de cache local (Local Cache) pour empêcher les références circulaires ( références circulaires)) et accélère les requêtes imbriquées répétées. La valeur par défaut est SESSION, auquel cas toutes les requêtes exécutées au cours d'une session seront mises en cache. Si la valeur est STATEMENT, la session locale est utilisée uniquement pour l'exécution des instructions et différents appels à la même SqlSession ne partageront pas de données. | SESSION | STATEMENT | SESSION | ||
jdbcTypeForNull | Null est spécifié lorsqu'aucun type JDBC spécifique n'est fourni pour le paramètre Type JDBC . Certains pilotes doivent spécifier le type JDBC de la colonne. Dans la plupart des cas, utilisez simplement le type général, tel que NULL, VARCHAR ou OTHER. | Énumération JdbcType. Les plus courantes sont : NULL, VARCHAR et OTHER | OTHER | ||
lazyLoadTriggerMethods | Spécifie quelle méthode d'objet est déclenchée. Une charge paresseuse. | Une liste de noms de méthodes séparés par des virgules | equals,clone,hashCode,toString | ||
defaultScriptingLanguage | Spécifier le SQL dynamique généré par défaut langue. | Un alias de type ou un nom de classe complet | org.apache.ibatis.scripting.xmltags.XMLDynamicLanguageDriver >Spécifiez s'il faut appeler la méthode setter (put for map object) de l'objet de mappage. lorsque la valeur dans le jeu de résultats est nulle. Ceci est utile en cas de dépendance Map.keySet() ou d'initialisation de valeur nulle. Notez que les types de base (int, booléen, etc.) ne peuvent pas être définis sur null. | ||
false | logPrefix | Spécifie le préfixe que MyBatis ajoute au nom du journal. | |||
Non défini | logImpl | Spécifiez l'implémentation spécifique du journal utilisé par MyBatis Si non spécifié, il sera automatiquement recherché. | SLF4J | LOG4J | LOG4J2 | JDK_LOGGING | STDOUT_LOGGING Outil proxy utilisé pour les objets avec des capacités de chargement paresseux. | CGLIB | JAVASSIST | |
Configurez selon vos propres besoins dans les applications réelles : | Par exemple, ma configuration dans le projet est généralement la suivante : |
Remarque :
<setting<p> name="logImpl" value="SLF4J" />
est particulièrement importante. La configuration doit être précisée (si LOG4J est utilisé), par exemple : <settings> <setting name="jdbcTypeForNull" value="NULL" /> <setting name="logImpl" value="SLF4J" /> <setting name="mapUnderscoreToCamelCase" value="true" /> <setting name="defaultExecutorType" value="BATCH" /> </settings>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!