(PS:完整代码地址:https://github.com/WenMuJ/springboot
有兴趣的可以看看)
一.整合springboot+mybatis(idea版本)
1.创建springboot项目
选择spring initializr,点击next,输入工程名称等信息,下一步,选择相应的jar包
下一步之后,选择自己的工作空间地址。最后点击finish。至此,项目搭建第一步完成了。
下面附上pom.xml
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.4.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.wsy</groupId> <artifactId>springboot</artifactId> <version>0.0.1-SNAPSHOT</version> <name>springboot</name> <description>Demo project for Spring Boot</description> <properties> <java.version>1.8</java.version> <mybatis.version>2.0.1</mybatis.version> <druid.version>1.1.10</druid.version> <mysql.version>8.0.16</mysql.version> <!-- <spring-security.version>2.1.6.RELEASE</spring-security.version>--> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>${mybatis.version}</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>${druid.version}</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${mysql.version}</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <exclusions> <exclusion> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> </exclusion> </exclusions> </dependency> </dependencies> <build> <!-- 加上这个resources标签,将xml文件输出到target包下--> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.xml</include> </includes> </resource> <resource> <directory>src/main/resources</directory> </resource> </resources> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>2.2.4.RELEASE</version> </plugin> <!-- mybatis generator 自动生成代码插件 --> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.4.0</version> <configuration> <configurationFile>${basedir}/src/main/resources/generator/generatorConfig.xml</configurationFile> <overwrite>true</overwrite> <verbose>true</verbose> </configuration> </plugin> </plugins> </build> </project>
二.配置mybatis
1.mybatis数据源(加入druid作为连接池)
在application.properties中配置
#配置数据源 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver #加上?serverTimezone=UTC这个配置统一时区 #加上allowMultiQueries=true目的是为了让mysql开启批量更新 spring.datasource.url=jdbc:mysql://localhost:3306/springboot?serverTimezone=UTC&allowMultiQueries=true spring.datasource.username=root spring.datasource.password= #配置连接池信息 spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
2.配置mybatis generator 代码生成器
resources中创建generator文件夹,然后新建generator.xml文件
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> <generatorConfiguration> <classPathEntry location="D:\apache-maven-3.6.1\m2\mysql\mysql-connector-java\8.0.16\mysql-connector-java-8.0.16.jar"/> <context id="default" targetRuntime="MyBatis3"> <commentGenerator> <property name="suppressDate" value="true"/> <property name="suppressAllComments" value="true"/> </commentGenerator> <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/ssm?serverTimezone=UTC" userId="root" password="123456"> <property name="nullCatalogMeansCurrent" value="true"/> </jdbcConnection> <javaModelGenerator targetPackage="com.wsy.springboot.pojo" targetProject="./src/main/java"> <property name="trimStrings" value="true"/> </javaModelGenerator> <sqlMapGenerator targetPackage="mapper" targetProject="./src/main/resources"> </sqlMapGenerator> <javaClientGenerator type="XMLMAPPER" targetPackage="com.wsy.springboot.mapper" targetProject="./src/main/java"> </javaClientGenerator> <table tableName="authority" domainObjectName="Authority" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"> </table> </context> </generatorConfiguration>
完成后在右侧maven中找到对应的地方,双击mybatis-generate即可生成对应的pojo类和mapper文件。
三.一对多查询
mybatis完成一对多查询,也就是关联查询
1.pojo
user类中添加一个集合存放role
2.mapper.xml
使用collecation标签完成
--END
来源:CSDN
作者:三昷
链接:https://blog.csdn.net/anxian5227/article/details/104448415