SpringBoot学习--04SpringBoot整合Mybatis(上)(配置mybatis generator,PageHelper)

陆陆续续又忙了几天,继续写。

本篇仿照着优秀的文章的书写,加上自己的理解和踩过的坑,原文地址:https://www.jianshu.com/p/5cd772c07041?utm_campaign=haruki&utm_content=note&utm_medium=reader_share&utm_source=weixin

环境/版本一览:

  • 开发工具:eclipse
  • springboot: 2.0.1.RELEASE
  • jdk:1.8.0_40
  • maven:3.3.9

额外功能:

  • PageHelper 分页插件
  • mybatis generator 自动生成代码插件

开始搭建:

一.创建项目:

1、同样如上文,创建SpringBoot项目(默认为最新版),

2、填写项目的基础信息,

3、选择基础的项目依赖包,可以以后手动添加,

4、选择finish,等待依赖包加载完成。

这是生成pom.xml文件

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 3     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 4     <modelVersion>4.0.0</modelVersion>
 5
 6     <groupId>com.luozhen</groupId>
 7     <artifactId>StudyForSpringBoot</artifactId>
 8     <version>0.0.1-SNAPSHOT</version>
 9     <packaging>jar</packaging>
10
11     <name>StudyForSpringBoot</name>
12     <description>There are two kinds of life, one is burning, the other is rotten.</description>
13
14     <parent>
15         <groupId>org.springframework.boot</groupId>
16         <artifactId>spring-boot-starter-parent</artifactId>
17         <version>2.0.1.RELEASE</version>
18         <relativePath/> <!-- lookup parent from repository -->
19     </parent>
20
21     <properties>
22         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
23         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
24         <java.version>1.8</java.version>
25     </properties>
26
27     <dependencies>
28         <dependency>
29             <groupId>org.springframework.boot</groupId>
30             <artifactId>spring-boot-starter-web</artifactId>
31         </dependency>
32         <dependency>
33             <groupId>org.mybatis.spring.boot</groupId>
34             <artifactId>mybatis-spring-boot-starter</artifactId>
35             <version>1.3.2</version>
36         </dependency>
37
38         <dependency>
39             <groupId>org.springframework.boot</groupId>
40             <artifactId>spring-boot-devtools</artifactId>
41             <scope>runtime</scope>
42         </dependency>
43         <dependency>
44             <groupId>mysql</groupId>
45             <artifactId>mysql-connector-java</artifactId>
46             <scope>runtime</scope>
47         </dependency>
48         <dependency>
49             <groupId>org.springframework.boot</groupId>
50             <artifactId>spring-boot-starter-test</artifactId>
51             <scope>test</scope>
52         </dependency>
53     </dependencies>
54
55     <build>
56         <plugins>
57             <plugin>
58                 <groupId>org.springframework.boot</groupId>
59                 <artifactId>spring-boot-maven-plugin</artifactId>
60             </plugin>
61         </plugins>
62     </build>
63
64
65 </project>

这是生成的文件目录,其中的配置文件application.properties可以根据自己的习惯选择,使用properties或者yml文件,本项目使用的是yml配置文件,所以把原本application.properties删除,创建一个application.yml文件

更改后:(可以直接 rename后缀名为yml)

二.配置mybatis及自动生成代码generate

mybatis配置有两种,一种是注解版,在代码中配置;另一种是xml版,搭配generate,可以灵活的动态生成SQL,很方便的调整SQL.

此处我们讲解的是xml版,搭配generate使用.

1.尽管我们在前面创建项目的时候依赖了mybatis依赖包,但是我们还是要确认下.如果前面没有勾选,我们也可以手动导入mybatis依赖包,在<dependencies>标签中写入一下代码导入依赖,

1         <dependency>
2             <groupId>org.mybatis.spring.boot</groupId>
3             <artifactId>mybatis-spring-boot-starter</artifactId>
4             <version>1.3.2</version>
5         </dependency>

2.接下来就是application.yml配置文件中添加相关的配置.

 1 #端口号
 2 server:
 3   port: 55555
 4
 5 #datasource,数据连接
 6 spring:
 7   datasource:
 8     driver-class-name: com.mysql.jdbc.Driver
 9     # 基本属性
10     url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false
11     username: root
12     password: 123456
13
14 #mybatis
15 mybatis:
16   type-aliases-package: com.luozhen.entity #实体类映射文件包
17   mapper-locations: classpath:mybatis/mappers/*.xml #生成的sql语句

以上的就是配置文件的基础配置,后续可加入详细的内容,同时需要注意#mybatis后面的配置需要对应的文件包,以下为我的文件包,

很多文章上都写了需要mybatis-config.xml文件,但是你会发现其中的内容会和application.yml的重复,配置为数据库的连接配置.SpringBoot会自动加载,spring.datasource.*相关配置,数据源就会自动注入到sqlSessionFactory中,sqlSessionFactory会自动注入到Mapper中,对了你一切都不用管了,直接拿起来使用就行了。

4.到这里mybatis的配置就完成了,接下就是generate的配置.同样,也是需要在pom.xml中导入依赖包,在<build><plugins></plugins></build>中添加依赖,

 1 <!-- generator自动生成代码依赖包 -->
 2       <plugin>
 3         <groupId>org.mybatis.generator</groupId>
 4         <artifactId>mybatis-generator-maven-plugin</artifactId>
 5         <version>1.3.5</version>
 6         <configuration>
 7           <!-- 配置generatorConfig的位置,注意:若不配置generatorConfig的位置,会默认位置为src/main/resources下。 -->
 8           <configurationFile>src/main/resources/mybatis/generatorConfig.xml</configurationFile>
 9           <verbose>true</verbose>
10           <overwrite>true</overwrite>
11         </configuration>
12         <executions>
13           <execution>
14             <id>Generate MyBatis Files</id>
15             <goals>
16               <goal>generate</goal>
17             </goals>
18             <phase>generate</phase>
19             <configuration>
20               <verbose>true</verbose>
21               <overwrite>true</overwrite>
22             </configuration>
23           </execution>
24         </executions>
25         <dependencies>
26           <dependency>
27             <groupId>MySQL</groupId>
28             <artifactId>mysql-connector-Java</artifactId>
29             <version>5.1.46</version>
30           </dependency>
31           <dependency>
32             <groupId>org.mybatis.generator</groupId>
33             <artifactId>mybatis-generator-core</artifactId>
34             <version>1.3.6</version>
35           </dependency>
36           <dependency>
37             <groupId>org.mybatis</groupId>
38             <artifactId>mybatis</artifactId>
39             <version>3.4.6</version>
40           </dependency>
41         </dependencies>
42       </plugin>

5.配置generatorConfig.xml,内容,

 1 <?xml version="1.0" encoding="UTF-8" ?>
 2
 3     <!DOCTYPE generatorConfiguration
 4       PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
 5       "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
 6
 7 <generatorConfiguration>
 8   <context id="mysqlTables" targetRuntime="MyBatis3">
 9     <!-- 是否去除自动生成的注释 true:是 : false:否 -->
10     <commentGenerator>
11       <property name="suppressDate" value="false" />
12       <property name="suppressAllComments" value="true" />
13     </commentGenerator>
14     <!-- 数据库链接URL,用户名、密码 -->
15     <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/test?useUnicode=true&amp;characterEncoding=utf-8&amp;useSSL=false" userId="root" password="123456">
16     </jdbcConnection>
17
18     <javaTypeResolver>
19       <property name="forceBigDecimals" value="false" />
20     </javaTypeResolver>
21
22     <!-- 生成model模型,对应的包,存放位置可以指定具体的路径,如/ProjectName/src,也可以使用MAVEN来自动生成 -->
23     <javaModelGenerator targetPackage="com.luozhen.entity" targetProject="src/main/java">
24       <property name="enableSubPackages" value="true" />
25       <property name="trimStrings" value="true" />
26     </javaModelGenerator>
27
28     <!--对应的xml mapper文件 -->
29     <sqlMapGenerator targetPackage="mybatis/mappers" targetProject="src/main/resources">
30       <property name="enableSubPackages" value="true" />
31     </sqlMapGenerator>
32
33     <!-- 对应的dao接口 -->
34     <javaClientGenerator type="XMLMAPPER" targetPackage="com.luozhen.daos" targetProject="src/main/java">
35       <property name="enableSubPackages" value="true" />
36     </javaClientGenerator>
37
38
39     <!-- 要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名(不生成Example(帮助类)类) -->
40     <table tableName="sys_department" domainObjectName="SysDepartment" enableCountByExample="false" enableSelectByExample="false" enableUpdateByExample="false" enableDeleteByExample="false">
41     </table>
42
43   </context>
44
45 </generatorConfiguration>

具体的参考配置可以查看:

https://www.jianshu.com/p/e09d2370b796 Mybatis Generator最完整配置详解

6.最后配置generator生成,F5刷新

项目 右键==>run as ==> maven bulid ==>弹出对话框 ==>在goals中输入mybatis-enerator:generate 或者 点击select --》选择你的mybatis插件 --》apply --》run,结果如下

原文地址:https://www.cnblogs.com/yuanmo396022993/p/9112640.html

时间: 2025-01-10 17:01:12

SpringBoot学习--04SpringBoot整合Mybatis(上)(配置mybatis generator,PageHelper)的相关文章

MyBatis MapperScannerConfigurer配置――MyBatis学习笔记之八

MyBatis MapperScannerConfigurer配置——MyBatis学习笔记之八 2012-09-02 20:01:42 标签:Spring MyBatis MapperScannerConfigurer bean默认命名 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://legend2011.blog.51cto.com/3018495/980150 在上一篇博文的示例中,我们在beans.xml中配置了stu

学习笔记:Caffe上配置和运行MNIST

学习笔记:Caffe上配置和运行MNIST MNIST,一个经典的手写数字库,包含60000个训练样本和10000个测试样本,图片大小28*28,在Caffe上配置的第一个案例 1首先,获取minist的数据包. 这个版本是四个数据包cd $CAFFE_ROOT./data/mnist/get_mnist.sh [html] view plaincopy #!/usr/bin/env sh # This scripts downloads the mnist data and unzips it

学习笔记:Caffe上配置和运行Cifar10的示例

学习笔记:Caffe上配置和运行Cifar10的示例 CIFAR-10数据集含有6万个32*32的彩色图像,共分为10种类型,由 Alex Krizhevsky, Vinod Nair和 Geoffrey Hinton收集而来.包含50000张训练图片,10000张测试图片 http://www.cs.toronto.edu/~kriz/cifar.html 数据集的数据存在一个10000*3072 的 numpy数组中,单位是uint8s,3072是存储了一个32*32的彩色图像.(3072=

【学习】整合springboot2.0 和 mybatis,实现基本的CRUD

前言: 本文是在自己整合springboot 2.0 和mybatis时的过程和踩得坑. 先附上github地址:https://github.com/yclxt/springboot-mybatis.git 环境/版本: 工具: Intellij IDEA 2018.3 JDK: 1.8 Springboot: 2.0.4.RELEASE Mybatis : 1.3.2 由于本人是初学者,对druid 和handle Page 不太熟悉,所以只是按照网上的配置加了上去,等了解后会在之后的博客中

学习myBatis - 如何配置myBatis

这篇文章主要学习如何配置myBatis. 要学习新东西要讲究方法,我觉得要从三个层面去理解它:它是什么(what),为什么要学它(why),怎么用它(how).有了学习方法学习的效率才高. 1.myBatis是什么(what) myBatis的官方用户指南上面是这样写的:MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架.MyBatis 消除 了几乎所有的 JDBC 代码和参数的手工设置以及结果集的检索.MyBatis 使用简单的 XML 或注解用于配置和原始映射,将接

SpringBoot学习:整合Mybatis,使用HikariCP超高性能数据源

一.添加pom依赖jar包: 1 <!--整合mybatis--> 2 <dependency> 3 <groupId>org.mybatis.spring.boot</groupId> 4 <artifactId>mybatis-spring-boot-starter</artifactId> 5 <version>1.1.1</version> 6 </dependency> 7 8 <!

SpringBoot学习(二)--&gt;Spring的Java配置方式

二.Spring的Java配置方式 Java配置是Spring4.x推荐的配置方式,可以完全替代xml配置. 1.@Configuration 和 @Bean Spring的Java配置方式是通过 @Configuration 和 @Bean 这两个注解实现的: 1.@Configuration 作用于类上,相当于一个xml配置文件: 2.@Bean 作用于方法上,相当于xml配置中的<bean>: 2.示例 该示例演示了通过Java配置的方式进行配置Spring,并且实现了Spring IO

Springboot学习~7:SpringMVC自动配置

Spring MVC auto-configuration Spring Boot 自动配置好了SpringMVC 以下是SpringBoot对SpringMVC的默认配置:==(WebMvcAutoConfiguration)== Inclusion of ContentNegotiatingViewResolver and BeanNameViewResolver beans. 自动配置了ViewResolver(视图解析器:根据方法的返回值得到视图对象(View),视图对象决定如何渲染(转

SpringBoot 整合MyBatis 统一配置bean的别名

所谓别名, 就是在mappper.xml配置文件中像什么resultType="xxx" 不需要写全限定类名, 只需要写类名即可. 配置方式有两种: 1. 在 application.yml中 #mybatis相关配置 mybatis: type-aliases-package: com.zzuli.domain 2. 在application.properties中 mybatis.type-aliases-package=cn.byzt.bean 两种方式选其一即可. 注意: 在S