notas de estudio mybatis 2


Prefacio

Este artículo explicará el archivo de configuración de mybatis con más detalle.


Uno, dependencia de Maven

Mybatis requiere dependencias:

		<dependency>
	            <groupId>org.mybatis</groupId>
	            <artifactId>mybatis</artifactId>
	            <version>3.4.5</version>
	    </dependency>	

dependencias requeridas de mysql:

		<dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.6</version>
        </dependency>

Dos, SqlMapConfig.xml (archivo de configuración principal)

Configuracion basica

  1. La configuración más básica del uso de mybatis incluye principalmente dos partes: configuración del entorno y configuración del archivo de mapeo de registro. La configuración del entorno completa principalmente algunos atributos necesarios para conectarse a la base de datos.
  2. La configuración de la etiqueta de mapeadores es para mapear su archivo de configuración xml de declaración SQL.

El archivo xml se puede configurar utilizando el atributo de origen del asignador

<mappers>
        <mapper resource="com/itheima/dao/IUserDao.xml"></mapper>
</mappers>

Usar anotaciones en lugar de archivos xml se puede configurar usando atributos de clase de asignador

<mappers> 
	<mapper class="com.itheima.dao.IUserDao"/>
</mappers>

O usa la etiqueta del paquete

<mappers>
    <!--<mapper resource="com/itheima/dao/IUserDao.xml"></mapper>-->
        <!-- package标签用于指定dao接口所在的包,当指定完成后就不需要再写mapper -->
        <package name="com.itheima.dao"/>
    </mappers>

La configuración completa es la siguiente:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <!--配置环境-->
    <environments default="mysql">
        <!-- 配置mysql的环境-->
        <environment id="mysql">
            <!-- 配置事务 -->
            <transactionManager type="JDBC"></transactionManager>

            <!--配置连接池-->
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver"></property>
                <property name="url" value="jdbc:mysql://localhost:3306/eesy_mybatis"></property>
                <property name="username" value="root"></property>
                <property name="password" value="1234"></property>
            </dataSource>
        </environment>
    </environments>
    <!-- 配置映射文件的位置 -->
    <mappers>
    <!--<mapper resource="com/itheima/dao/IUserDao.xml"></mapper>-->
        <!-- package标签用于指定dao接口所在的包,当指定完成后就不需要再写mapper -->
        <package name="com.itheima.dao"/>
    </mappers>
</configuration>

Configuración adicional

Configurar alias

Cuando se configura el alias, resultType se puede escribir directamente en lugar del nombre de clase completo al configurar resultType en el archivo de configuración de los asignadores.
Inserte la descripción de la imagen aquí
Por ejemplo, después de configurar el alias aquí, solo necesita escribir usuario en lugar de com.itheima.domain.User
y el alias no distingue entre mayúsculas y minúsculas, puede escribir usuario o UsEr

Colocación específica:

<typeAliases>
    <!--<typeAlias type="com.itheima.domain.User" alias="user"></typeAlias>-->
    <!-- 用于指定要配置别名的包,当指定之后,该包下的实体类都会注册别名,并且类名就是别名,不再区分大小写 -->
        <package name="com.itheima.domain"/>
        
</typeAliases>

Importar archivos de propiedades para la configuración

  • Además de usar directamente la etiqueta de propiedad para configurar la información de conexión de la base de datos en mybatis, también se puede configurar usando la etiqueta de propiedades.
  • Importe el archivo de configuración a través del atributo de recurso (o atributo de URL) de la etiqueta de propiedades y luego use $ {} para el valor de la etiqueta de propiedades.

Colocación específica:

    <properties resource="jdbcConfig.properties"></properties>

O en forma de URL

    <properties url="file:///D:/project/day02_eesy_02mybatisDao/src/main/resources/jdbcConfig.properties"></properties>

Método de valor:

<!--配置环境-->
    <environments default="mysql">
        <!-- 配置mysql的环境-->
        <environment id="mysql">
            <!-- 配置事务 -->
            <transactionManager type="JDBC"></transactionManager>

            <!--配置连接池-->
            <dataSource type="POOLED">
                <property name="driver" value="${jdbc.driver}"></property>
                <property name="url" value="${jdbc.url}"></property>
                <property name="username" value="${jdbc.username}"></property>
                <property name="password" value="${jdbc.password}"></property>
            </dataSource>
        </environment>
    </environments>

El contenido del archivo jdbcConfig.properties:

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/eesy_mybatis
jdbc.username=root
jdbc.password=1234

Cabe señalar aquí que el nombre de propiedad del valor de $ {} debe corresponder al nombre de propiedad del archivo jdbcConfig.properties, de lo contrario no se obtendrá.

para resumir

Configuración de la versión totalmente integrada:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <!-- 可以在标签内部配置连接数据库的信息,也可以通过属性引用外部配置文件信息
        resource属性:常用的
               用于指定配置文件的位置,是按照类路径的写法来写,并且必须存在于类路径下。
        url属性:
               要求按照Url的写法来写地址
               协议 主机 端口 URI
    -->

    <properties resource="jdbcConfig.properties">
<!--    <properties url="file:///D:/project/day02_eesy_02mybatisDao/src/main/resources/jdbcConfig.properties">-->

<!--        <property name="driver" value="com.mysql.jdbc.Driver"></property>-->
<!--        <property name="url" value="jdbc:mysql://localhost:3306/eesy_mybatis"></property>-->
<!--        <property name="username" value="root"></property>-->
<!--        <property name="password" value="0000"></property>-->
    </properties>
    <!-- 使用typeAliases配置别名,它只能配置domain中类的别名
        type:实体类全限定类名
        alias:属性指定别名
        使用了别名后不再区分大小写
    -->
    <typeAliases>
    <!--<typeAlias type="com.itheima.domain.User" alias="user"></typeAlias>-->
    <!-- 用于指定要配置别名的包,当指定之后,该包下的实体类都会注册别名,并且类名就是别名,不再区分大小写 -->
        <package name="com.itheima.domain"/>
        
    </typeAliases>
    <!--配置环境-->
    <environments default="mysql">
        <!-- 配置mysql的环境-->
        <environment id="mysql">
            <!-- 配置事务 -->
            <transactionManager type="JDBC"></transactionManager>

            <!--配置连接池-->
            <dataSource type="POOLED">
                <property name="driver" value="${jdbc.driver}"></property>
                <property name="url" value="${jdbc.url}"></property>
                <property name="username" value="${jdbc.username}"></property>
                <property name="password" value="${jdbc.password}"></property>
            </dataSource>
        </environment>
    </environments>
    <!-- 配置映射文件的位置 -->
    <mappers>
    <!--<mapper resource="com/itheima/dao/IUserDao.xml"></mapper>-->
        <!-- package标签用于指定dao接口所在的包,当指定完成后就不需要再写mapper -->
        <package name="com.itheima.dao"/>
    </mappers>
</configuration>

Supongo que te gusta

Origin blog.csdn.net/u013456390/article/details/112867895
Recomendado
Clasificación