MyBatis
文章平均质量分 59
robona
这个作者很懒,什么都没留下…
展开
-
MyBatis概述与架构
MyBatis介绍MyBatis本是apache的一个开源项目iBatis,2010年这个项目由apache software foundation迁移到了google code,并且改名为MyBatis。2013年11月迁移到Github。MyBatis是一个优秀的持久层框架,它对jdbc的操作数据库的过程进行封装,使开发者只需要关注SQL本身,而不需要花费精力去处理例如注册驱动、创建con...原创 2018-11-07 21:25:51 · 335 阅读 · 0 评论 -
MyBatis动态SQL
什么是动态SQL? 动态SQL有什么作用?传统的使用JDBC的方法,相信大家在组合复杂的的SQL语句的时候,需要去拼接,稍不注意哪怕少了个空格,都会导致错误。Mybatis的动态SQL功能正是为了解决这种问题, 其通过 if, choose, when, otherwise, trim, where, set, foreach标签,可组合成非常灵活的SQL语句,从而提高开发人员的效率。动态 ...原创 2018-11-12 21:28:37 · 333 阅读 · 0 评论 -
MyBatis逆向工程生成代码(附源码)
什么是逆向工程MyBatis逆向工程可以方便的从数据库中将表自动映射到JAVA POJO类,并同时生成Mapper.xml和Mapper接口,方便实用。MyBatis的一个主要的特点就是需要程序员自己编写sql,那么如果表太多的话,难免会很麻烦,所以mybatis官方提供了一个逆向工程,可以针对单表自动生成mybatis执行所需要的代码(包括mapper.xml、mapper.java、po…...原创 2018-11-14 11:42:25 · 1859 阅读 · 0 评论 -
MyBatis中Mapper映射文件的输入(parameterType)和输出(resultType)映射
Mapper.xml映射文件中定义了操作数据库的sql,每个sql是一个statement,映射文件是mybatis的核心。输入类型parameterType传递简单类型传递简单类型,前两节课都见过,这里只给出案例:传递pojo对象MyBatis使用ognl表达式解析对象字段的值,#{}或者${}括号中的值为pojo的属性名称。传递pojo对象之前也已讲过,这里同样只给出案例:传...原创 2018-11-12 14:13:13 · 7722 阅读 · 0 评论 -
MyBatis入门程序案例
mybatis下载mybaits的代码由github.com管理,地址:https://github.com/mybatis/mybatis-3/releases。 可从该地址下载mybatis最新框架。下载之后解压缩:案例需求1 根据用户id查询y一个用户信息2 根据用户名模糊查询用户信息列表3 添加用户信息4 修改用户信息5 删除用户信息MyBatis入门程序配置1)...原创 2018-11-08 20:08:47 · 600 阅读 · 0 评论 -
MyBatis实现分页
本案例以上一章Spring整个MyBatis案例为基础集合分页(未使用SQL分页:假分页)原理:在进行sql查询时一次性查找到所有数据保存在list中,再使用subList获取满足条件的记录。这种方法也被称为假分页。此方法适用于数据量较少的情况下,当数据量数据量较大时会影响数据库以及服务器的性能。 本案例附带条件查询,模糊查询为例StudentMapper接口中定义page方法/**...原创 2018-11-13 21:57:09 · 781 阅读 · 2 评论 -
Spring整合MyBatis框架
思路MyBatis整合Spring的思路如下:SqlSessionFactory对象应该放到spring容器中作为单例存在。传统Dao的开发方式中,应该从spring容器中获得sqlsession对象。Mapper代理形式中,应该从spring容器中直接获得mapper的代理对象。数据库的连接以及数据库连接池事务管理都交给spring容器来完成。jar包Spring所需jar包...原创 2018-11-13 20:23:20 · 380 阅读 · 0 评论 -
MyBatis使用Mapper动态代理开发Dao层
开发规范Mapper接口开发方法只需要程序员编写Mapper接口(相当于Dao接口),由Mybatis框架根据接口定义创建接口的动态代理对象,代理对象的方法体同原始Dao接口实现类方法。Mapper接口开发需要遵循以下规范:Mapper.xml文件中的namespace与mapper接口的类路径相同,即namespace必须是接口的全限定名。Mapper接口方法名和Mapper.x...原创 2018-11-11 18:26:19 · 2284 阅读 · 0 评论 -
使用JDBC编程的问题总结
JDBC编程的步骤1、加载数据库驱动2、创建并获取数据库连接3、创建JDBC Statement对象4、设置sql语句5、设置sql语句中的参数(使用PreparedStatement)6、通过Statement执行sql并获取结果7、对sql执行结果进行解析处理8、释放资源(ResultSet、PreparedStatement、Connection)使用JDBC编程所带来的...原创 2018-11-07 17:25:37 · 444 阅读 · 0 评论 -
MyBatis关联映射
关联映射关系我们拿学生和年级的关系来举例:一对一:因为一个学生只能属于一个年级,所以从学生的角度一个学生只能对一个年级,一对一关系(实际上从模块的角度出发,多个学生同属一个年级,应该是多对一的关系,但是此处我们要从实际操作查询的角度出发,如果此处把他们看多多对一去查询就没有意义了)。一对多:一个年级可以有多个学生,所有从年级的角度是一对多关系。案例准备1)在数据库中新建student...原创 2018-11-13 13:58:58 · 334 阅读 · 0 评论 -
SSM整合入门案例
本案例框架版本:Spring 4.2.4 RELEASESpring MVC 4.2.4 RELEASEMyBatis 3.4.5数据库案例准备新建数据库ssm ,在ssm中新建数据表student和grade##新建gradeCREATE TABLE `NewTable` (`grade_id` int(4) NOT NULL AUTO_INCREMENT ,`grade_n...原创 2018-11-16 12:08:02 · 612 阅读 · 1 评论