欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Idea+Maven+springboot+Mybatis 创建web项目教程(2):集成Mybatis

程序员文章站 2022-05-26 10:01:08
...

接上一篇:

Idea+Maven+springboot+Mybatis 创建web项目教程(1):环境搭建与配置

0.预备小知识

在启动项目的时候我们看到,springboot 项目为我们自动在 8080 端口启动了一个 tomcat ,但是平常我们可能已经装过 tomcat 或者这个端口有别的东西要用,这种情况下,本身在 eclipse 里面处理,是要找到对应在本地的配置文件,修改里面某一行的代码,但是在 springboot 里面就更加方便。

具体的做法是:

如下图,在项目的 resources 目录下,新建一个文件,命名为 application.properties(一般命名)

Idea+Maven+springboot+Mybatis 创建web项目教程(2):集成Mybatis
然后在里面输入一行代码:

server.port=8090

Idea+Maven+springboot+Mybatis 创建web项目教程(2):集成Mybatis
这个时候我们重启项目,就可以看到,

Idea+Maven+springboot+Mybatis 创建web项目教程(2):集成Mybatis
然后,打开浏览器测试,就会发现,8080端口已经无法访问,8090端口则显示了期望的内容。

一、集成Mybatis

Mybatis是什么?
Mybatis让程序员只关注sql本身,而不需要去关注如连接的创建、statement的创建等操作, Mybatis会将输入参数、输出结果进行映射。具体是什么,需要系统的进行学习,总之,相对于原生的jdbc需要一堆preparestatement,重复的代码,还要创建连接释放连接相比,有了Mybatis,一切都变得更加简单。

有了上一节的背景知识,可以知道 springboot 项目会自己读取这个 properties 文件来执行相应的配置。显然连接数据库的操作也可以通过他来完成。

我们进入 pom 文件。显然,需要 Mybatis 的相关依赖包,但是不用网上找,然后手动配置,一样只要在 pom.xml 文件里插入相应的引入标签。

再插入一个介绍:sun公司为了简化、统一对数据库的操作,定义了一套java操作数据库的规范,称为jdbc。对于应用程序而言,只需要学习这个接口,驱动的实现部分则不用实现。jdbc全称为 java data base connectivity,组成他的两个包有:java.sql和javax.sql,在javase中已经包含。开发jdbc应用需要以上两个包的支持之外,还需要导入相应的jdbc的数据库实现(即数据库驱动)比如对于mysql来说,还需要加入对应的jar包,比如mysql-connector-java-xxx。

引入的步骤如下:

  1. 引入mysql-connector的依赖,在dependencies标签中新建dependency。因为 Java 连接 MySQL 需要驱动包,这个包就是驱动。
    Idea+Maven+springboot+Mybatis 创建web项目教程(2):集成Mybatis
  2. 接着指定用什么连接池管理mysql的连接,阿里的druid提供了一个高效、功能强大、可扩展性好的数据库连接池
    Idea+Maven+springboot+Mybatis 创建web项目教程(2):集成Mybatis
  3. 添加springboot对Mybatis的支持:
    Idea+Maven+springboot+Mybatis 创建web项目教程(2):集成Mybatis
  4. 然后一样进行刷新,Maven就会对pom.xml重新解析,开始下载对应的依赖。

上面关于java和数据库连接一些问题,网上看到这篇博客有更详细的介绍:
https://www.cnblogs.com/knowledgesea/p/11202918.html

稍等片刻之后,可以看到左边的libraries里面,又多出来了几个jar包:

Idea+Maven+springboot+Mybatis 创建web项目教程(2):集成Mybatis

二、配置Mybatis

为了启动带有 mybatis 数据库访问的 springboot 工程,我们要一组 xml 文件,

  1. 在 resources 目录下面创建一个文件夹叫 mapping (存放xml文件的)
    Idea+Maven+springboot+Mybatis 创建web项目教程(2):集成Mybatis
  2. 在application.properties里面写上一行:
    mybatis.mapper-locations=classpath:mapping/*.xml
    意思就是说,指定了Mybatis的mapper路径为, mapping 目录下所有的 xml 文件,注意有个*和一个 .
  3. 使用Mybatis的自动生成工具插件,生成对应的数据库文件的映射。做法就是,引入这个插件,去哪里引入插件?这种事当然是 Maven 帮我们做,到 pom.xml文件找到 plugin 标签,添加。
    Idea+Maven+springboot+Mybatis 创建web项目教程(2):集成Mybatis
    引入插件mybatis-generator,MyBatis官方提供了**** mybatis-generator,可以针对数据库表自动生成MyBatis执行所需要的代码。(generator中文意思就是生成,生产)
  • 另外,这个插件有自身需要的依赖,包括 generator-core,和对应的mysqlconnector;
  • 下面,我们还给这个插件设置了execution标签,中文意思是执行,这里面设置了id,phase(构建的生命周期)goal(执行目标)等,关于具体的标签,maven官方文档只有英文,链接如下:
    https://maven.apache.org/guides/mini/guide-configuring-plugins.html#Using_the_executions_Tag(每日感叹,如果英语好,学计算机该多么容易?干啥都是手把手的文档)
  1. 在execution标签下面再加入配置标签configuration
    Idea+Maven+springboot+Mybatis 创建web项目教程(2):集成Mybatis

然后我们把里面的mybatis-generator.xml文件编写出来,文件路径就是指定的路径。这个文件的编写,一般是从官网复制一个参考的模板:

http://mybatis.org/generator/configreference/xmlconfig.html

Idea+Maven+springboot+Mybatis 创建web项目教程(2):集成Mybatis

旁边有友好的提示,关于每个标签怎么使用。

我们把这个示例拷贝下来,填到我们自己的MBG文档里。

下一步,随着数据的创建,连接,我们需要做的事情,就是在这个文档里进行修改,以及对应的数据对象的java代码编写。这一个步骤就到一段落。

如果你还没有装数据库,现在应该做的事情是装mysql和Navicat。官网显示的mysql-connector-java版本和对应的匹配。
Idea+Maven+springboot+Mybatis 创建web项目教程(2):集成Mybatis
因为我们引入的依赖是mysql-connector-java的5.1,因此需要下载的mysql在5.6以上,否则可能会出现一些问题。

相关标签: springboot