最初に導入瓶
<! -引入スターター- >
<依存>
<groupIdを> org.mybatis.spring.boot </ groupIdを>
<たartifactId> MyBatisのスプリング・ブート・スターター</たartifactId>
<バージョン> 1.3.2 </バージョン>
<スコープ>ランタイム</スコープ>
</依存関係>
<! - MySQLのJDBC的驱动包- >
<依存>
<groupIdを> mysqlの</ groupIdを>
<たartifactId>のmysql-コネクタ-javaの</たartifactId>
<スコープ>ランタイム</スコープ>
</依存関係>
<! -サードパーティのデータソースを導入しています- >
<依存>
<groupIdを> com.alibaba </ groupIdを>
<たartifactId>ドルイド</たartifactId>
<バージョン> 1.1.6 </バージョン>
</依存関係>
設定ファイル
spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC&characterEncoding=utf-8
username: root
password: 123456
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.alibaba.druid.pool.DruidDataSource
スタートクラス増加マッパースキャン
@MapperScan(「com.boot。*。マッパー 」)//マッパーそれらマッパーcom.bootスキャン注。*。フォルダのパスマッパーマッパー
@SpringBootApplication
@MapperScan("com.boot.*.mapper") // mapper 注释扫描那些mapper
public class TestBootApplication {
public static void main(String[] args) {
SpringApplication.run(TestBootApplication.class, args);
}
}
マッパーファイルのコメント
@Repository
public interface UserMapper {
@Select("select * from user where id = #{id}")
@Options(useGeneratedKeys = true,keyProperty = "id",keyColumn = "id")
public User getId(String id);
}
@options(useGeneratedKeys =真、keyProperty =「ID」場合、KeyColumn =「ID」)とエンティティクラス指定フィールドは、データベースフィールドであります
ここで私マッパー注釈が使用されている@Repositoryで事実、ここであなたも@mapper使用することができます
2が異なります
@Repositoryスキャンアドレスは春に構成する必要があり、ビーンは、ダオサービス層を生成することができます層に注入されています。
@Mapperビーンサービス層への注入後に生成されたスキャンアドレス、XML名前空間内の内部インタフェースを介してアドレスを設定する必要はありません。
コンソールオペレータは、設定ファイルに追加のSQL文を印刷してみましょう
ログ: レベル: com.boot.test.mapper:デバッグ
com.boot.test.mappeこれはマッパファイル格納フォルダがあります