mybatis 强制类型转换_MyBatis的入门使用

一:入门使用

  1. 要使用 MyBatis, 只需将 mybatis-x.x.x.jar 文件置于 classpath 中即可。
  2. 如果使用 Maven 来构建项目,则需将下面的 dependency 代码置于 pom.xml 文件中
1ec9b348b4ca152f657748ed0d6444c2.png

二:XML 中构建 SqlSessionFactory

  1. MyBatis 的应用都是以一个 SqlSessionFactory 的实例为中心的
  2. SqlSessionFactory 的实例可以通过 SqlSessionFactoryBuilder 获得
  3. 而 SqlSessionFactoryBuilder 则可以从 XML 配置文件或一个预先定制的 Configuration 的实例构建出 SqlSessionFactory 的实例。
  4. MyBatis 包含一个名叫 Resources 的工具类,它包含一些实用方法,可使从 classpath 或其他位置加载资源文件更加容易。
dbf139b12d248c68ce05d9563f6a681b.png
  1. XML 配置文件(configuration XML)中包含了对 MyBatis 系统的核心设置,包含获取数据库连接实例的数据源(DataSource)和决定事务作用域和控制方式的事务管理器(TransactionManager)
fe698379572ef4445ebfa2dafc5200c3.png

三:不使用 XML 构建 SqlSessionFactory

  1. 直接从 Java 程序而不是 XML 文件中创建 configuration,或者创建你自己的 configuration 构建器,MyBatis 也提供了完整的配置类,提供所有和 XML 文件相同功能的配置项
ffdc611a63eaacf7f3a8dafb1f0fdfc0.png

2.注意该例中,configuration 添加了一个映射器类(mapper class)。映射器类是 Java 类,它们包含 SQL 映射语句的注解从而避免了 XML 文件的依赖。不过,由于 Java 注解的一些限制加之某些 MyBatis 映射的复杂性,XML 映射对于大多数高级映射(比如:嵌套 Join 映射)来说仍然是必须的。有鉴于此,如果存在一个对等的 XML 配置文件的话,MyBatis 会自动查找并加载它(这种情况下, BlogMapper.xml 将会基于类路径和 BlogMapper.class 的类名被加载进来)

四:SqlSessionFactory 中获取 SqlSession

  1. SqlSessionFactory ,顾名思义,我们就可以从中获得 SqlSession 的实例了。SqlSession 完全包含了面向数据库执行 SQL 命令所需的所有方法。你可以通过 SqlSession 实例来直接执行已映射的 SQL 语句
6173d9279e8fca353aba0707f5fd08e2.png

2.诚然这种方式能够正常工作,并且对于使用旧版本 MyBatis 的用户来说也比较熟悉,不过现在有了一种更直白的方式。使用对于给定语句能够合理描述参数和返回值的接口(比如说BlogMapper.class),你现在不但可以执行更清晰和类型安全的代码,而且还不用担心易错的字符串字面值以及强制类型转换

3070624fd4de6d181fc7f454eadc76ac.png
ab328f31e93527dcdf6672da6e39634d.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MyBatis中,强制类型转换是通过使用类型处理器(TypeHandler)来实现的。当MyBatis捕获到需要进行类型转换的数据交互时,会将其交由相应的类型处理器进行处理。通过注册类型转换器在配置文件中,可以告诉MyBatis如何将Java类型转换为数据库中的数据类型,以及如何将数据库中的数据类型转换为Java类型。 在MyBatis的结构设计中,类型转换模块扮演着非常重要的角色。它解决了JDBC中的占位符赋值和结果集中的数据处理的问题。通过使用类型转换器,我们可以处理不支持或非标准的类型。具体的实现方法是,可以重写类型处理器(TypeHandler)或者新建类型转换器,并将其映射到JDBC的类型。这样,MyBatis就可以正确地进行类型转换了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Mybatis中的类型转换器](https://blog.csdn.net/qq_48569009/article/details/124208363)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [一文帮你搞定MyBatis类型转换模块,深度好文,欢迎一键三连!!!](https://blog.csdn.net/qq_38526573/article/details/119250783)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值