美文网首页
【框架】114:mybatis初体验

【框架】114:mybatis初体验

作者: 刘小爱 | 来源:发表于2020-08-18 13:28 被阅读0次

    ​今天是刘小爱自学Java的第114天。

    感谢你的观看,谢谢你。

    image

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

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

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

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

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

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

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

    一、jdbc环境的搭建

    1maven父工程

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

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

    image

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

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

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

    2依赖管理

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

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

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

    image

    ①版本管理

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

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

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

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

    ②依赖管理

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

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

    3创建子工程

    其创建步骤如下图:

    image

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

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

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

    最后做一个小结:

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

    二、jdbc的回顾

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

    image

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

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

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

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

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

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

    image

    ①注册驱动②获取连接

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

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

    ③预编译④设置参数

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

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

    ⑤执行语句

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

    ⑥处理结果⑦释放资源

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

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

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

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

    而mybatis要更加地强大。

    三、mybatis的引入

    1核心配置文件

    image

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

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

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

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

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

    2映射文件配置

    image

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

    namespace+id

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

    resultType

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

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

    3Java代码编写

    image

    ①获取核心配置文件

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

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

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

    ②获取sqlSession

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

    ③执行查询操作

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

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

    ④关流不要忘记了

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

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

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

    最后

    谢谢你的观看。

    如果可以的话,麻烦帮忙点个赞,谢谢你。

    相关文章

      网友评论

          本文标题:【框架】114:mybatis初体验

          本文链接:https://www.haomeiwen.com/subject/lbegdktx.html