1、动态代理的理解
动态代理就是只有接口,没有实现类。
2、数据层的核心只有:输入(类型)、输出(类型)、要执行的sql语句
所以,mybatis 动态代理模式简化了很多代码,只关注和保留了这三点。
只保留了个Dao 接口和sql语句文件,并保证Dao接口中的输入、返回类型和 sql 语句一致;sql语句的id名和多对应放入Dao方法名一致。
3、Mybatis中 sql语句数据的传递
(1)传递单个参数
public interface UsertMapper {
void deleteUser(String id);
}
sql文件
<delete id="deleteUser" parameterType="int">
DELETE FROM `user` WHERE `id` = #{id}
</delete>
(2)传递java实体类
public interface UsertMapper {
void updateUser(User user);
}
sql文件