首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Mybatis学习之路
秦怀杂货店
创建于2021-05-20
订阅专栏
关于Mybatis学习...
暂无订阅
共23篇文章
创建于2021-05-20
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Mybatis【1】-- 第一个Mybatis程序
Mybatis本来是Apache的一个开源项目iBatis,这个项目2010年由Apache迁移到了Google,更名为Mybatis,2013年正式迁移到Github。 Mybatis是一个java中一个持久层的框架,在里面封装了jdbc操作,如果还不了解java如何使用jd…
Mybatis【2】-- 多个mapper文件以及namespace作用
此文章仅代表自己(本菜鸟)学习积累记录,或者学习笔记,如有侵权,请联系作者删除。人无完人,文章也一样,文笔稚嫩,在下不才,勿喷,如果有错误之处,还望指出,感激不尽~ 技术之路不在一时,山高水长,纵使缓慢,驰而不息。
Mybatis【2.1】-- 从读取流到创建SqlSession发生了什么?
我们使用sqlSession之前,需要去获取配置文件,获取InputStream输入流,通过SqlSessionFactoryBuilder获取sqlSessionFactory对象,从而获取sqlSession。 在Resources.class中我们只是使用private …
Mybatis【2.2】-- Mybatis关于创建SqlSession源码分析的几点疑问?
跟进去,我们再来看另一个build方法,里面有一个finally模块,无论怎么样都会执行close方法,所以这就是为什么我们在使用的时候为什么不用关闭inputstream的原因:因为这个流是在finally代码块中被关闭了。 2. Sqlsession是如何创建的? 语句里面…
Mybatis【2.3】-- Mybatis一定要使用commit才能成功修改数据么?
代码直接放在Github仓库【https://github.com/Damaer/Mybatis-Learning】,mybatis-02可直接运行,就不占篇幅了。 像以下的代码就是使用了自动提交的mysql引擎。 如果是不支持事务的引擎,如myisam,则是否commit都没…
Mybatis【3】-- Mybatis使用工具类读取配置文件以及从属性读取DB信息
我们的思路应该是写一个工具类来替我们获取配置文件的信息,只要返回一个sqlSession实例就可以了。所以就有了MyBatisUtils.class,下面这样的方式,只要使用sqlSession=MyBatisUtils.getSqlSession();就可以获取到sqlses…
Mybatis【4】-- 关于Mybatis别名定义
我们下面需要改进的是别名,也趁这个机会介绍一下别名的作用。 其实是有的!!!那就是别名,mybatis可以让我们起一个别名给它,别名定义是在mybatis.xml主配置文件中。注意别名标签应该定义在<properties></properties>后面,在&…
Mybatis【5】-- Mybatis多种增删改查那些你会了么?
如果查询一条数据,那么只需要使用selectOne()即可。 至此这个demo就完成了,运行test的时候建议多跑几次插入再测其他功能。 1.通过加载mybatis.xml文件,然后解析文件,获取数据库连接信息,存起来。 2.扫描mybatis.xml里面配置的mapper.x…
Mybatis【6】-- Mybatis插入数据后自增id怎么获取?
我们知道很多时候我们有一个需求,我们需要把插入数据后的id返回来,以便我们下一次操作。 其实一开始的思路是我插入之后,再执行一次select,根据一个唯一的字段来执行select操作,但是Student这个类如果插入后再根据名字或者年龄查出来,这根本就是不可行的!!!重名与同年…
Mybatis【7】-- Mybatis如何知道增删改是否成功执行?
我们知道很多时候我们有一个需求,我们需要把插入数据后的id返回来,以便我们下一次操作。 其实一开始的思路是我插入之后,再执行一次select,根据一个唯一的字段来执行select操作,但是Student这个类如果插入后再根据名字或者年龄查出来,这根本就是不可行的!!!重名与同年…
Mybatis【8】-- Mybatis返回List或者Map以及模糊查询怎么搞?
好像执行sql之后都没有结果的。其实不是的,增删改的sql执行之后都会有一个int类型的返回值,表示的意思是这个操作影响的行数。举个例子,如果我们插入一行成功的话,影响的就是一行。如果我们修改一条数据成功的话,那么我们也是影响了一行。如果我们删除一条数据成功的话,那么返回的就是…
Mybatis【9】-- Mybatis占位符#{}和拼接符${}有什么区别?
1.#{}占位符可以用来设置参数,如果传进来的是基本类型,也就是(string,long,double,int,boolean,float等),那么#{}里面的变量名可以随意写,什么abc,xxx等等,这个名字和传进来的参数名可以不一致。 2.如果传进来的是pojo类型,那么#…
Mybatis【10】-- Mybatis属性名和查询字段名不同怎么做?
很多时候我们有这样的需求,数据库的字段名与实体类的属性名不一致,这个时候我们需要怎么做呢?有两种解决方案,第一种:直接在查询的时候使用别名,将别名设置成与实体类的属性名一致。第二种:使用resultType,自己定义映射关系。 秦怀,公众号【秦怀杂货店】作者,技术之路不在一时,…
Mybatis【12】-- Mybatis多条件怎么查询?
很多时候,我们需要传入多个参数给sql语句接收,但是如果这些参数整体不是一个对象,那么我们应该怎么做呢?这里有两种解决方案,仅供参考。 测试接口,我们传入一个Map,里面的value是一个对象,那么我们可以放字符串,数字,以及一个student对象。 我们的sql接口,传入的是…
Mybatis【13】-- Mybatis动态Sql标签的使用
mybatis有一个强大的特性,其他框架在拼接sql的时候要特别谨慎,比如哪里需要空格,还要注意去掉列表最后一个列名的逗号,mybtis的动态sql可以帮助我们逃离这样的痛苦挣扎,那就是动态SQL.它还可以处理一种情况,当你不确定你的参数不知道是不是为空的时候,我们不需要在业务…
Mybatis【14】-- Mybatis如何实现一对多查询?
注:代码已托管在GitHub上,地址是:https://github.com/Damaer/Mybatis-Learning ,项目是mybatis-10-one2many,需要自取,需要配置maven环境以及mysql环境(sql语句在resource下的test.sql中)…
Mybatis【15】-- Mybatis一对一多表关联查询
注:代码已托管在GitHub上,地址是:https://github.com/Damaer/Mybatis-Learning ,项目是mybatis-11-one2one,需要自取,需要配置maven环境以及mysql环境(sql语句在resource下的test.sql中),…
Mybatis【16】-- Mybatis多对一关联查询
注:代码已托管在GitHub上,地址是:https://github.com/Damaer/Mybatis-Learning ,项目是mybatis-12-many2one,需要自取,需要配置maven环境以及mysql环境(sql语句在resource下的test.sql中)…
Mybatis【17】-- Mybatis自关联查询一对多查询
注:代码已托管在GitHub上,地址是:https://github.com/Damaer/Mybatis-Learning ,项目是mybatis-13-oneself-one2many,需要自取,需要配置maven环境以及mysql环境(sql语句在resource下的te…
Mybatis【18】-- Mybatis自关联多对一查询方式
注:代码已托管在GitHub上,地址是:https://github.com/Damaer/Mybatis-Learning ,项目是mybatis-14-oneself-many2one,需要自取,需要配置maven环境以及mysql环境(sql语句在resource下的te…
下一页