mybatis的一些问题

mybatis里的一些问题

最近本人(学生)正在学习mybatis框架,遇到了一些问题,最终查阅资料得以解惑,跟大家一起分享

mybatis的基本使用

1、准备需要的JAR包
在这里插入图片描述
最新版本官网下载地址:https://github.com/mybatis/mybatis-3/releases
2、部署jar文件
在这里插入图片描述
3、创建配置文件
(1)创建MyBatis核心配置文件:mybatis-config.xml
(2)创建log4j日志配置文件log4j.properties
4、创建VO:User.java
每一个文件对应数据库的一张表
在这里插入图片描述
5、创建DAO:IUserDAO.java
在这里插入图片描述
6、创建接口映射文件:UserMapper.xml
在这里插入图片描述
7、创建测试程序Driver.java
在这里插入图片描述

映射文件问题导致sql语句返回null

IUserDAO.java
在这里插入图片描述
UserMapper.xml
在这里插入图片描述
因为老师只给了一个查询findByUserName的例子,所以后面的所以SQL语句方法我都写成了*<select*></select>
执行的时候报错
在这里插入图片描述
控制台报错返回null
Mapper method 'dao.IUserDAO.doRemove attempted to return null from a method with a primitive return type (boolean).
然后查阅资料才发现 映射文件错误 插入:<insert ></insert> 更新:<update></update>删除:<delete></delete>
修改之后发现还是报错,控制台实例化失败报错
Cause: org.xml.sax.SAXParseException; lineNumber: 16; columnNumber: 45; 必须为元素类型 “delete” 声明属性 “resultType”。
<delete id=“doRemove” resultType=“vo.User”>
DELETE FROM user WHERE userName=#{userName}
</delete>
这样的话直接删除delete里面的属性resultType="vo.User"就可以解决了

数据库无法实时更新

修改完之后,操作语句显示操作成功,但数据库并没有变化,这时就应该是少了一条语句,salSession,close();前加上
sqlSession.commit();
这样应该OK了

虽然以上的问题很简单,但对于一个初学者来说也是需要花时间解决的,最后感谢大家的阅读

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值