namespace可以唯一确定一个东西。包括类,数据。
mybatis是基于JDBC的框架,红色的鸟是MyBatis的图标,蓝色的鸟是 MyBatis-Plus的图标JDBC 是 Java 与数据库交互的标准 API,允许您连接到不同的 数据库管理系统 ,执行 SQL 查询和更新数据,它可以sql和代码的分离,提高代码的可维护性
MyBatis-Plus提供了CRUD接口、通用Service,支持Lambda形式调用,内置了强大的条件构造器,降低了SQL编写的工作量。
编写代码
编写接口
mapper文件中的sql语句
编写测试类绑定接口注册
编写接口,增加注解
测试类
mybatis的错误
mybatis配置文件没有注册
方法名错误
返回类型错误
maven导出资源更新
#{value}将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号。
${value}将传入的数据直接显示生成在sql中。
#{value}方式能够很大程度防止sql注入。
${value}方式无法防止Sql注入。
${value}方式一般用于传入数据库对象,例如传入表名
<!--给类起别名-->
<typeAliases>
<typeAlias type="com.hwt.pojo.User" alias="user"/>
</typeAliases>
什么是动态SQL:动态SQL就是根据不同的条件生成不同的SQL语句
什么是缓存【Cache】:存在内存中的临时数据!
MyBatis系统中默认定义了两级缓存:一级缓存和二级缓存默认情况下,只有一级缓存开启。(SqlSession级别的缓存,也称为本地缓存)二级缓存需要手动开启和配置,他是基于namespace级别的缓