0

跟着mybatis官网一步步搭建自己的项目,但总是不能正常运行,希望大家能从头到尾给我一个完整的指导,非常感谢。

4

2 回答 2

2

步骤 1. 新建一个名为 booking 的 spring boot 项目。

这一步基本上是,我会跳过它。

步骤 2. 将 mybatis-generator 添加到项目中。

这可以帮助我们自动生成需要的实体和映射器类 mybatis,这对我们节省时间非常有用。

  1. 在 pom.xml 中添加插件配置
        <plugin>
            <groupId>org.mybatis.generator</groupId>
            <artifactId>mybatis-generator-maven-plugin</artifactId>
            <version>1.3.5</version>
            <dependencies>
                <dependency>
                    <groupId>mysql</groupId>
                    <artifactId>mysql-connector-java</artifactId>
                    <version>6.0.6</version>
                </dependency>
            </dependencies>
        </plugin>
  1. 在基本资源路径中创建 generatorConfig.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>
    <context id="MySqlContext" targetRuntime="MyBatis3Simple" defaultModelType="flat">
        <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
                        connectionURL="jdbc:mysql://localhost:3306/booking?useSSL=false"
                        userId="root"
                        password="123456">
            <property name="nullCatalogMeansCurrent" value="true" />
        </jdbcConnection>

        <javaModelGenerator targetPackage="com.clycle.booking.entity" targetProject="C:\Users\a243903\projects\booking\webapi\src\main\java">
            <property name="enableSubPackages" value="true" />
            <property name="trimStrings" value="true" />
        </javaModelGenerator>

        <sqlMapGenerator targetPackage="com.clycle.booking.mapper"  targetProject="C:\Users\a243903\projects\booking\webapi\src\main\resources">
            <property name="enableSubPackages" value="true" />
        </sqlMapGenerator>

        <javaClientGenerator type="XMLMAPPER" targetPackage="com.clycle.booking.mapper"  targetProject="C:\Users\a243903\projects\booking\webapi\src\main\java">
            <property name="enableSubPackages" value="true" />
        </javaClientGenerator>

        <table tableName="%">
        </table>

    </context>
</generatorConfiguration>
  1. 创建 maven 运行/调试配置来运行这个插件。

在此处输入图像描述

它将自动生成所有实体、映射器类和映射器 xml。-Dmybatis.generator.overwrite=true,表示使用maven运行mybatis generator时会覆盖已有的实体或mapper类。

第三步,将mybatis添加到这个项目中。

  1. 在 pom.xml 中添加 mybatis 依赖
    <dependency>
        <groupId>org.mybatis.spring.boot</groupId>
        <artifactId>mybatis-spring-boot-starter</artifactId>
        <version>1.3.1</version>
    </dependency>
  1. 在基本资源路径创建 mybatis-config.xml。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <settings>
        <setting name="logImpl" value="LOG4J" />
    </settings>

    <typeAliases>
        <package name="com.clycle.booking.entity" />
    </typeAliases>

    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC">
                <property name="" value="" />
            </transactionManager>
            <dataSource type="UNPOOLED">
                <property name="driver" value="com.mysql.jdbc.Driver" />
                <property name="url" value="jdbc:mysql://localhost:3306/booking" />
                <property name="username" value="root" />
                <property name="password" value="123456" />
            </dataSource>
        </environment>
    </environments>

    <mappers>
        <package name="com.clycle.booking.mapper" />
        <!--<mapper resource="com/clycle/booking/mapper/ShopMapper.xml" />-->
    </mappers>
</configuration>
  1. 为应用程序主类添加@MapperScan。
@SpringBootApplication
@MapperScan({"com.clycle.booking.mapper"})
public class BookingApplication {

    public static void main(String[] args) {
        SpringApplication.run(BookingApplication.class, args);
    }
}
  1. 自动连接映射器界面来操作您的数据库。
@Autowired
private ShopMapper shopMapper;

@PostMapping(RoutePath.SHOP_LIST)
public List<Shop> GetList() {

    try {
        return shopMapper.selectAll();
    } catch (Exception ex) {
        return null;
    }
}
于 2018-02-25T16:59:37.283 回答
0

你可以下载这个项目:https ://github.com/yyqian/spring-boot-mybatis-generator 。在我的电脑上一切正常。

于 2018-06-28T09:08:43.420 回答