前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【框架】114:mybatis初体验

【框架】114:mybatis初体验

作者头像
刘小爱
发布2020-08-06 23:40:21
4290
发布2020-08-06 23:40:21
举报
文章被收录于专栏:零基础自学Java零基础自学Java

从今天开始进入myBatis框架的学习。

既然要学它,那肯定要搞清楚它是干嘛的?

它是由Apache开源的一个数据持久层框架,

提到数据持久层,我就想到了dao层,也就很自然而然地想到了数据库。

它可以对数据库中的数据进行增删改查,并且比我们之前在用的jdbcTemplate更加。

简单说下今天的学习内容:

  • jdbc环境搭建,关于maven父工程的引入。
  • jdbc核心步骤的回顾。
  • mybatis介绍以及入门程序编写。

一、jdbc环境的搭建

1maven父工程

我们学Java的都知道继承的概念,父类中的属性和方法,子类都可以直接使用。

其实在maven工程中也有父工程和子工程的概念,我们创建一个父工程:

和创建普通maven工程一样的方式,需要注意的地方在于:

  • 打包方式设为pom。
  • src文件可以删除,因为我们的代码都是写在对应的子工程中的,父工程不需要写代码。

那既然不写代码,父工程用来干嘛的呢?

2依赖管理

关于依赖,学maven的时候专门就讲过,说白了就是jar包,但比jar包更好管理。

每个业务模块都会有自己需要的jar包。

既然如此,那何不专门把依赖存放在父工程?那个子工程需要哪些依赖就取哪些。

①版本管理

每一个jar包都会有各种各样的版本,如果版本不统一就会出现冲突问题。

而父工程就可以解决这个问题。

在父工程中就规定好jar包的版本号,所有的子工程都是用父工程中指定的版本。

如果版本号需要更换,只需要修改父工程中的即可,管理起来特别地方便。

②依赖管理

子工程需要哪些依赖,直接从父工程中取。

当然一般都会在父工程中放很多依赖,我这边截图放不下,就不一一说明了。

3创建子工程

其创建步骤如下图:

直接在父工程中new一个子工程。

module,模块的意思,父工程下的一个模块,也就是它的子工程。

在子工程pom文件中引入对应的依赖即可,其中关于版本不用规定,由父工程决定。

最后做一个小结:

父工程的典型作用在于jar包版本的统一管理,此外还有项目的聚合(这个后续会学)。

二、jdbc的回顾

既然是对数据库进行操作,肯定先要有对应的数据来做测试:

导入对应的sql文件创建数据表。

当然在数据量不多的情况下,也可以直接在Navicat上创建sql语句并执行。

sql语句我这边就不说明了,测试数据网上找,自己写都可以。

有了数据表之后,我们使用Java代码对数据库进行查询操作。

其核心六步骤,因为使用了预编译,所以多了一个设置参数的步骤。

这些步骤不说滚瓜烂熟,基本上也是非常熟悉了,写了很多遍:

①注册驱动②获取连接

数据库四大金刚,根据这四个参数可以定位我们要操作的数据库:

数据库在哪台电脑上?数据库叫什么名字?

③预编译④设置参数

关于预编译我以前专门也学习说明过,为了防止sql注入,使用预编译。

参数也就是指定sql语句中“?”的值。

⑤执行语句

查询语句,使用executeQuery()方法。

⑥处理结果⑦释放资源

根据数据表中对应的字段名,取出对应的值。

表中字段有很多,这边只取两个作为例子。

好,代码编写完毕,但是这个流程太复杂繁琐了,每次都要这样写的话简直要命。

所以为了简化代码的编写,我们后面学习了jdbcTemplate,使用起来方便很多。

而mybatis要更加地强大。

三、mybatis的引入

1核心配置文件

在resource中创建一个mybatis的XML核心配置文件,名称自定义。

该配置文件代码的编写,我们需要参考官方文档或者网络搜寻复制即可。

但是我们要修改里面的参数:也就是数据库四大金刚,要设置成我们自己的。

其中的映射文件需要再次创建一个配置文件,并且映射文件一定要在核心文件配置说明。

就是每创建一个新的映射文件,都要记得在该核心配置文件中说明。

2映射文件配置

该配置文件等于是把sql语句独立出去了,我们以前要在Java代码中编写一个Java字符串。

namespace+id

这个就是作为标识,在Java代码中需要使用其定位sql语句的位置。

resultType

Java中的实体类和数据库中的表存在着对应关系,比如User实体类和tab_user表。

其中要写User类的全限定名。

3Java代码编写

①获取核心配置文件

也就是1中的mybatis-config.xml文件。

这里使用mybatis提供的Resources工具类调用getResourceAsStream()即可。

获取的结果就是一个IO流。

②获取sqlSession

先构建对应的工厂,再调用openSession()方法开启session。

③执行查询操作

因为我们在映射文件中对应的是查询,那这里使用selectOne方法,参数为:

  • 映射文件中对应的id。
  • sql语句中需要的参数。

④关流不要忘记了

以上就是对于mybatis的使用,点击运行即可对数据库进行查询。

当然对各个步骤只是做了一个初步了解,具体有什么作用还并不是很清楚。

明天我们继续深入地学习mybatis。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-08-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 刘小爱 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、jdbc环境的搭建
  • 二、jdbc的回顾
  • 三、mybatis的引入
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档