MyBatis集成方法是什么


这篇文章主要介绍“MyBatis集成方法是什么”,在日常操作中,相信很多人在MyBatis集成方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MyBatis集成方法是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!MyBaits是一个著名的持久层框架,本文首先介绍了MyBatis的简单使用,接着与Spring进行整合,最后简单地使用了Generator去自动生成代码。MyBatis本来是Apache的一个开源项目——iBatis,2010年由Apaceh Software Foundation迁移到了Google Code,并改名为MyBatisMyBatis是一个基于Java的持久层框架,提供的持久层框架包括SQL MapsData Access Objects,使用简单的XML或者注解用于配置映射,将接口和POJO映射成数据库中的记录,是一个小巧、方便、高效、简单、直接、半自动化的持久层框架。上图:读取配置文件:mybatis-config.xml是全局MyBatis配置文件,配置了MyBatis运行环境信息加载映射文件:也就是SQL映射文件,配置了操作数据库的SQL语句构造会话工厂:通过配置文件构造会话工厂SqlSessionFactory创建会话对象:由上一步的会话工厂创建会话对象SqlSession获取MapperStatement:通过用户调用的apiStatement ID获取MapperStatement对象输入参数映射:通过ExecutorMapperStatement进行解析,将各种Java基本类型转化为SQL操作语句中的类型输出结果映射:JDBC执行SQL后,借助MapperStatement的映射关系将返回结果转化为Java基本类型并返回首先先来看一下纯MyBaits的示例,没有整合Spring,一个简单的Maven工程,项目结构如下:Gradle:新建一个叫UserMapper.xml的映射文件:映射文件是一个XML文件,根元素为,需要注意其中的namespace属性,调用的时候通过该namespace调用。其中的子元素表示SQL语句::查询,id指定了这条语句的id号,调用时通过namespace.id的方式调用,比如该条select需要通过UserMapper.selectById调用,parameterType指定参数类型,这里是一个Integer的参数,resultType指定返回类型,实体类//:对应的插入/修改/删除语句关于占位符:#{}表示是占位符,相当于传统JDBC中的?#{id}表示该占位符等待接收的参数名称为idMyBatis的配置文件,叫mybatis-config.xml:指定了数据库的一些连接属性还有mapper的位置。主要流程如下:读取配置文件:根据org.apache.ibatis.io.Resources读取配置文件mybatis-config.xml,请注意配置文件的位置正确,这里的配置文件都放在resources下,mybatis-config.xml放在其中的config下构建Session:根据配置文件构建SqlSessionFactory后,通过openSession创建Session业务操作:通过sessionselectOne/insert/update等进行业务操作,这类操作带两个参数,第一个参数是String,表示配置文件中的SQL语句,采用namespace.id的形式,比如这里的UserMapper.xml中声明namespaceUserMapper,其中带有一条idselectByIdselect语句,因此调用时使用UserMapper.selectById的形式,第二个参数是一个Object,表示要传递的参数,也就是绑定到配置文件中对应占位符的值提交与关闭:业务操作完成后提交事务并关闭session示例测试结果:上面的例子只是为了演示MyBatis的基本使用,没有整合Spring,这里的例子是把Spring整合进来,流程也大概差不多,项目结构如下:分为5类JARMyBatis需要的JARSpring需要的JARMyBatisSpring整合的中间J 香港云主机AR数据库驱动JAR数据源JAR完整依赖如下:Gradle:配置文件分为三类:MyBatis映射文件:编写mapper的地方,也就是业务需要的SQL语句MyBatis全局配置文件:由于整合了Spring,数据源的配置放在了Spring的配置文件中,而只需要保留mapper的查找位置Spring配置文件:配置数据源+事务管理+MyBaitssqlSssionFactory+组件扫描与上面的例子差不多,只是修改了namespace包名.类名的形式:namespace需要与对应包名的带有@Mapper的类配置一致。需要加上@Mapper注解,表示自动装配为MyBatis的映射接口,注意:映射文件中的namespace需要与包名.类名对应,比如这里的包为pers.dao,类名为UserDao,那么映射文件中的namespacepers.dao.UserDaoid需要与方法名对应,比如映射文件中的有一条select语句的idselectById,那么方法就需要命名为selectById,且参数类型需要对应一致注入UserDao后进行简单的测试,结果如下:相信很多程序员也讨厌写又长又麻烦的XML配置文件,因此,MyBatis也提供了一个生成器插件,可以直接从表中生成实体类、dao接口以及映射文件,可以省去很多操作。步骤如下:导入依赖编写Generator配置文件生成代码其实就是加入一个插件:数据库驱动请对应修改。至于Gradle版请看Kotlin版源码。这里是参考别人的配置文件,修改数据库连接、表名、包名即可:双击生成即可:生成了实体类、dao接口以及mapper文件。到此,关于“MyBatis集成方法是什么”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注开发云网站,小编会继续努力为大家带来更多实用的文章!

相关推荐: ZooKeeper分析是怎么样的

这篇文章给大家介绍ZooKeeper分析是怎么样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。分布式系统是同时跨越多个物理主机,独立运行的多个软件所组成的系统。在这样的分布式系统中,如何保证节点信息同步和共享便是一个麻烦的事情,而Zoo…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 10/07 10:51
下一篇 10/07 10:52

相关推荐