IV 03 Lombok-SLF4j-@Mapper和@MapperScan-Mybatis基础依赖项

1.实体类

    测试mapper插入数据库时,用的是entity 写增删改查的顺序是先实体类–>mapper–>xml–>编写mapper测试

2.Lombok

加依赖

<!-- Lombok的依赖项,主要用于简化POJO类的编写 -->
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.20</version>
    <scope>provided</scope>
</dependency>

加注解 在POJO类上添加Lombok框架的@Data注解,可以在编译期生成:

    规范的Setter & Getter 规范的hashCode()与equals() 包含各属性与值的toString()

注意 当使用了Lombok后,由于源代码中并没有Setter & Getter方法,所以,当编写代码时,IntelliJ IDEA不会提示相关方法,并且,即使强行输入调用这些方法的代码,还会报错,但是,并不影响项目的运行!为了解决此问题,推荐安装Lombok插件!

3.SLF4j日志

spring-boot-starter依赖内置了SLF4J 显示级别在Spring Boot项目中,日志的默认显示级别是info

    trace debug info:一般信息 warn:警告信息 error:错误信息

配置级别

    在Spring Boot项目中,当添加了Lombok依赖项后,可以在任何类上添加@Slf4j注解,则Lombok会在编译期声明一个名为log的日志对象变量,此变量可以调用相关方法来输出日志! 日志的显示级别 logging.level.cn.tedu.csmall=info

示例

@Slf4j
@SpringBootTest
public class Slf4jTests {
          
   
    @Test
    void testLog() {
          
   
        log.info("输出了一条日志……");
    }
}

4.classpath默认路径是resources文件夹

例如:# 配置Mybatis的XML文件的位置 mybatis.mapper-locations=classpath:mapper/*.xml

5.Mybatis框架能@Mapper和@MapperScan注解

Mybatis框架能明确这个接口是数据访问接口,需要添加注解

  1. 【不推荐】在接口上添加@Mapper注解 每个数据访问接口上都需要此注解
  2. 【推荐】在配置类上添加@MapperScan注解,并配置数据访问接口所在的包 在根包(含子孙包)下的任何添加了@Configuration注解的类都是配置类 只需要一次配置,各数据访问接口不必添加@Mapper注解

@Mapper

@Mapper
public interface NewsMapper {
          
   
    @Insert("insert into news values(null,#{title},#{author},#{content},#{url},0,#{created})")
    void insert(News news);
    @Select("select id,title,author,content,url,view_count viewCount,created from news")
    List<News> select();
}

@MapperScan

6.Mybatis基础依赖项

1.Mybatis框架的基础依赖项的artifactId是:mybatis。 2.Mybatis框架虽然可以不依赖于Spring等其它框架,但是,直接使用比较麻烦,需要自行编写大量的配置,所以,通常结合Spring一起使用,需要添加的依赖项的artifactId是:mybatis-spring。 3.在Spring Boot项目中,直接添加mybatis-spring-boot-starter将包含以上依赖项,和其它必要的、常用的依赖项。

经验分享 程序员 微信小程序 职场和发展