CRUD
1、namespace
namespace中的包名要和 Dao/mapper 接口的包名一致!
2、select
选择,查询语句;
id : 就是对应的namespace中的方法名;
resultType:Sql语句执行的返回值!
parameterType : 参数类型!
编写接口
编写对应的mapper中的sql语句
测试
3、Insert
4、update
5、Delete
注意:
增删改需要提交事务
6、分析错误
标签不要匹配错
resource 绑定mapper,需要使用路径!
程序配置文件必须符合规范!
NullPointerException,没有注册到资源!
输出的xml文件中存在中文乱码问题!
maven资源没有导出问题!
2、配置解析
1、核心配置文件
configuration(配置)
properties(属性)
settings(设置)
typeAliases(类型别名)
typeHandlers(类型处理器)
objectFactory(对象工厂)
plugins(插件)
environments(环境配置)
environment(环境变量)
transactionManager(事务管理器)
dataSource(数据源)
databaseIdProvider(数据库厂商标识)
mappers(映射器)
2、环境配置(environments)
MyBatis 可以配置成适应多种环境
不过要记住:尽管可以配置多个环境,但每个 SqlSessionFactory 实例只能选择一种环境。
Mybatis默认的事务管理器就是 JDBC , 连接池 : POOLED
3、属性(properties)
我们可以通过properties属性来实现引用配置文件
这些属性都是可外部配置且可动态替换的,既可以在典型的 Java 属性文件中配置,亦可通过 properties 元素的子元素来传递
编写一个配置文件
db.properties
在核心配置文件中映入
4、类型别名(typeAliases)
类型别名是为 Java 类型设置一个短的名字。
存在的意义仅在于用来减少类完全限定名的冗余。
5、映射器(mappers)
MapperRegistry:注册绑定我们的Mapper文件;
方式一: 【推荐使用】
每一个Mapper.XML都需要在Mybatis核心配置文件中注册!
方式二:使用class文件绑定注册
每一个Mapper.XML都需要在Mybatis核心配置文件中注册!
注意点:
接口和他的Mapper配置文件必须同名
接口和他的Mapper配置文件必须在同一个包下
3、解决属性名和字段名不一致的问题
解决方法:
起别名