Cómo resolver el problema de inconsistencia entre el nombre del atributo Mybatis y el nombre del campo

Directorio

Descripción del problema

Método uno: alias en la instrucción SQL

Método 2: resultadoMapa


 

Descripción del problema

 

¿Qué pasa si los campos en la base de datos y los atributos en la clase de entidad son inconsistentes?

 

 

 

Método uno: alias en la instrucción SQL

 

El nombre del alias se ve perfecto, pero si hay muchos campos con alias, la instrucción SQL estará muy hinchada

select id,name,pwd from mybatis.user where id = #{id}

 

 

Método 2: resultadoMapa

 

En el archivo Mapper.xml específico, agregue la etiqueta resultMap. Esto es realmente muy flexible. Por ejemplo, solo tengo pwd! = Contraseña, por lo que no es necesario asignar otros campos.

Este enfoque transfiere operaciones no esenciales en SQL a la etiqueta <resultMap>. Sin embargo, si marca 5 tablas en 5 entidades, <resultMap> estará muy hinchado y el plan de optimización se compartirá en un blog.

<!--结果集映射-->
<resultMap id="UserMap" type="User">
    <!--column数据库中的字段,property实体类中的属性-->
    <result column="pwd" property="password"/>
</resultMap>

<select id="getUserById" resultMap="UserMap">
    select * from user where id = #{id}
</select>

 

 

568 artículos originales publicados · Me gusta 180 · Visitas 180,000+

Supongo que te gusta

Origin blog.csdn.net/Delicious_Life/article/details/105651721
Recomendado
Clasificación