在上一个的基础上继续增加新的功能,简单的逻辑不自己写一遍害真不知道为什么这样的。
代码在这里:https://github.com/NoNmin98/boottest03
1.查询-通过id
添加mapper内容
写sql
写service
写前端
测试
2.增加
增加mapper
增加service
写sql
在主页添加一个添加按钮(注意这里的href是跳转到controller中的,而不是直接跳转到其他html页面,疑惑半天)
增加一个添加的页面,这里也是点击提交之后跳转到controller中
写controller
测试:一开始页面是这样的
点击添加按钮
添加一项之后显示在了最后
3.删除
写mapper
写service
写sql
写前端页面
写controller
4.修改
写mapper
写sql
写service
写前端
我们再创建一个update页面,就直接写的和添加一样,比较方便。
写Controller
测试
我们修改3号
5.遇到的错误
1.在添加Person的时候犯了很低级的错误,导致一直都报错。
原因:在添加Person的时候使用的变量不是Person类对象,而是获取的两个属性,返回值也是错误的,我们在添加对象的时候,如果不是使用的Person类,会导致在添加数据库的时候,系统不知道我们的id的值,没有办法回写。
解决方法 :
2.从地址获取到数据
@PathVariable是spring3.0的一个新功能:接收请求路径中占位符的值
3.多参数mapper无法绑定
原因:没有在mapper中绑定属性,绑定之后boot把属性转换成了map类型的值,之后我们使用#{}取值,就是取的key
解决方法:如下图