配置文件
必要的用户密码要修改, 还有绿色线的名字要修改成数据库的
配置文件直接cv
创建
复习之前的知识进行分层处理
与前面一一对应, 后面三个发现后面输出是null, 没有一一对应, 后面再解释解决方法
运行发现, 输出正常
idea的测试类
两个注解了解
记得加上这个, 不然无法执行
配置文件打印日志
加入以上信息, 来对比一下有无配置文件的差别
没有配置文件
加入配置文件
其中的关系
参数传递
一个参数
在mapper接口那边写一下
一
在测试类进行测试得到测试结果, 发现没问题
二
将语句中的改成aa, 看一下会不会出现报错
发现也没有问题
说明会自动对应, 当只有一个参数的时候
两个参数
一
发现参数对应可以查到, 这是一种推荐写法
二
我们交换顺序看看
交换顺序也没有问题
三
参数名称不同的话
发现直接报错了, 无法使用
但是我们发现了param1 和 param2, 这个是指代 gender 和 age 的
可以得出这种写法
这种写法可以, 但是不是推荐
四
使用注解@param来进行对应
这是最推荐的写法, 将所有的名称保持一致
增
一
UserInfo会自动匹配
数据库也切实增加了
二
加上注解, Options可以获取自增主键的值, 并存储在userInfo中
此时要用userInfo.password …
发现数据库里的和打印的是一样的
删
一
userInfo自动匹配
可以看到删除成功, 数据库中少了
二
也可以直接传要删的参数, 和增加其实差不多
也可以删除
改
简单带过
设置的其他值并不会修改, 只有语句中的值会被修改
查
我们来解决之前后三个无法显示的问题
最简单的就是, 将后三个的名字改成与数据库一样, 但是不符合Java的语法规范规范
方法一
在sql语句中, 处理好映射问题, 返回的时候就是以Java命名规范命名的
方法二
采用注解处理好映射关系
一样可以
方法三
复用之前的
给 Result 加上 id
在另外一个加上注解@ResultMap 并且附上 id
一样可以
方法四
还有一种直接从配置文件中配置即可
在yml加入这个, 驼峰转换
一样可以运行