Operación Mybatis CRUD basada en XML

Directorio

Revise cómo MyBatis opera la base de datos

espacio de nombres

Análisis de valor de atributo Mapper.xml

Agregar, eliminar y modificar operaciones

Mapa todopoderoso

Consulta difusa


 

Revise cómo MyBatis opera la base de datos

 

Primero revisemos una línea de la base de datos operativa MyBatis.

1. Primero escribe el nombre del método en la capa dao 

public interface UserDao {
    List<User> getUserList();
}

2. Especifique la identificación del método y el tipo de valor de retorno en el archivo xml específico, y escriba la instrucción sql

<!--namespace=绑定一个对应的Dao/Mapper接口-->
<mapper namespace="com.lt.dao.UserDao">

    <!--select查询语句-->
    <select id="getUserList" resultType="com.lt.pojo.User">
       select * from mybatis.user
   </select>

</mapper>

 3. Ejecute la consulta en la clase de prueba.

        //第一步:获得SqlSession对象
        SqlSession sqlSession = MybatisUtils.getSqlSession();


        //方式一:getMapper
        UserDao userDao = sqlSession.getMapper(UserDao.class);
        List<User> userList = userDao.getUserList();

        for (User user : userList) {
            System.out.println(user);
        }

 

espacio de nombres

 

El nombre del espacio de nombres debe ser el mismo que el nombre de ruta de la interfaz Dao

 

Análisis de valor de atributo Mapper.xml

 

  • id: correspondiente al nombre del método en la interfaz dao;

  • resultType: ¡El valor de retorno de la ejecución de la instrucción SQL!

  • parameterType: tipo de parámetro!

 

 

Agregar, eliminar y modificar operaciones

 

    <insert id="addUser" parameterType="com.kuang.pojo.User">
        insert into mybatis.user (id, name, pwd) values (#{id},#{name},#{pwd});
    </insert>
    <update id="updateUser" parameterType="com.kuang.pojo.User">
        update mybatis.user set name=#{name},pwd=#{pwd}  where id = #{id} ;
    </update>
    <delete id="deleteUser" parameterType="int">
        delete from mybatis.user where id = #{id};
    </delete>

Tenga en cuenta que todas las operaciones de adición, eliminación y modificación requieren el envío de transacciones

También puede configurar para confirmar transacciones automáticamente al crear archivos en la clase de herramienta MybatisUtils

 

 

Mapa todopoderoso

 

Hemos escrito algunas líneas antes, y encontramos que hay dos problemas.

Primero, en sql, la identificación debe ser igual a {id}, el nombre debe ser igual a {nombre},

El segundo es que si usa una clase de entidad personalizada como Usuario como un objeto de parámetro, necesitamos escribir cada campo de la clase de entidad, pero si usamos Mapa, puede pasar cualquier parámetro que quiera pasar.

 

Ejemplo: use el mapa para modificar el nombre de usuario

Abra la base de datos para ver los resultados modificados.

Puede usar el mapa para personalizar el número de parámetros pasados, y los nombres de campo pasados ​​se basan principalmente en la llamada real, que puede ser inconsistente con los nombres de campo de la tabla de la base de datos.

 

 

Consulta difusa

 

Cuando use consultas difusas, no use el signo de porcentaje en la instrucción SQL, porque el formato del SQL muerto es muy inseguro y será atacado por inyección SQL.

 

 

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

Supongo que te gusta

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