天天看點

springboot掃描不到mapper接口_手把手建立第一個SpringBoot應用

本文介紹如何建立一個SpringBoot項目,其中包括了mybatis的內建。

建立一個SpringBoot項目

第一步:選擇SpringBoot

springboot掃描不到mapper接口_手把手建立第一個SpringBoot應用

第二步:填寫項目相關資訊

Group:項目的group id

Artifact:項目名稱

Type:類型,選擇Maven即可

Language:開發語言

Packaging:最終是打成jar包還是war包。

Java Version:java版本

Version:項目版本

springboot掃描不到mapper接口_手把手建立第一個SpringBoot應用

第三步:選擇項目依賴的jar包

根據自己所需勾選需要依賴的jar,在此處也可以不選,進入pom.xml自己添加所依賴的jar包也可。

springboot掃描不到mapper接口_手把手建立第一個SpringBoot應用

第四步:選擇存儲位置以及建立結束

springboot掃描不到mapper接口_手把手建立第一個SpringBoot應用

配置application.yml

項目建構完成之後會生成一個 application.properties的配置檔案,但是個人總喜歡使用yaml檔案。依據個人喜好進行配置檔案格式選擇。
# 服務端口
server:
  port: 8080

# mysql
spring:
  datasource:
    username: ${username}
    password: ${password}
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/${db}

# mybatis(配置映射檔案xml路徑,以及實體類的包)
mybatis:
  mapper-locations: classpath:mapper/*.xml
  type-aliases-package: com.me.catering.domain
           

建立映射xml檔案

mybatis提供了映射xml檔案,也提供了注解的形式。根據個人喜好選擇xml形式或者注解形式。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
  PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.me.catering.dao.TestDao">
  <select id="checkLogin" parameterType="String" resultType="int">
    select count(1)
    from login_info
    where login_name = #{loginName}
      and login_pwd = #{loginPwd}
  </select>
</mapper>
           

建立dao層接口

dao層接口應該與第二步的xml進行對應。上文中的namespace="com.me.catering.dao.TestDao",說明該接口是TestDao.java,包:com.me.catering
@Repository
public interface TestDao {
    //方法名與上文中xml中的<select>标簽的id對應。
    int checkLogin(@Param("loginName") String loginName, @Param("loginPwd") String loginPwd);
}
           

添加@MapperScan注解

掃描包,将帶有@Repository注解的類注冊成Spring的bean
@SpringBootApplication
@MapperScan("com.me.catering.dao")
public class CateringApplication {
  public static void main(String[] args) {
    SpringApplication.run(CateringApplication.class, args);
  }
}
           

至此大功告成,代碼可以運作了。