MyBatis科普总结


一:mybatis简介

  • mybatis是支持定制化SQL,存储过程以及高级映射的优秀的持久层框架;
  • mybatis避免了几乎所有的jdbc代码和手动设置参数以及获取结果集;
  • mybatis可以使用简单的XML或者注解用于配制和原始映射,将接口和Java的pojo(plain old java objects,普通的Java对象)映射成数据库中的记录;

二:mybatis优点

  • mybatis是一个半自动化的持久化层框架;
  • 在原来jdbc中,SQL夹在Java代码块里面,耦合度高导致硬编码内伤;维护不易而且实际开发需求中SQL是有变化的,频繁修改的情况多见。而mybatis中,SQL和Java编码分开,功能边界清晰,一个专注业务,一个专注数据。

三:sqlsession

使用sqlsessionfactory获取sqlsession对象,一个sqlsession对象代表和数据库的一次会话。

  • sqlsession的实例不是线程安全的,因此是不能被共享的;
  • sqlsession每次使用完成后需要正确关闭,这个关闭操作是必须的;
  • sqlsession可以直接调用方法的id进行数据库操作,但是一般还是推荐使用sqlsession获取到dao接口的代理类,执行代理对象的方法,可以更安全的进行类型检查操作。

四:mybatis全局配置文件

mybatis的配置文件包含了影响mybatis行为的设置(settings)和属性(properties)信息。文档的顶层结构如下:

  •  properties属性:如果属性不止在一个地方进行了配置,那么mybatis将按照下面的顺序来加载:在properties元素体内指定的属性首先被读取,然后根据properties元素中的resource属性读取路径下属性文件或者根据URL属性指定的路径读取属性文件,并且覆盖已经读取的同名属性。
  • settings:影响mybatis行为

五:mybatis工作原理

六.编写代码

  • 编写全局配置文件:sqlMapConfig.xml(配置数据库连接信息等)
  • 编写映射文件:xxxMapper.xml(编写SQL语句)
  • 编写dao层代码: xxxDao接口,xxxDaoImpl实现类(编写Mybatis API)
  • POJO类(用来传递参数和映射结果对象)
  • 单元测试

        编写代码注意事项

  • 所有的增删改操作都需要提交事务;
  • 接口所有的普通参数,尽量都写上@Param参数,尤其是多个参数时,必须写上;
  • 有时候根据业务的需求,可以考虑使用map传递参数;
  • 为了规范操作,在SQL的配置文件中,我们尽量将Parameter参数和resultType都写上;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值