SpringBoot入门第二节

一、SpringBoot(SpringMVC)对日志的控制

application.yml中添加

logging:
  level:
    cn.itcast: debug

二、编写自定义拦截器MyInterceptor实现HandlerInterceptor接口

package cn.itcast.interceptor;

import lombok.extern.slf4j.Slf4j;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@Slf4j
public class MyInterceptor implements HandlerInterceptor {
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        log.debug("preHandle method is running");
        return true;
    }

    @Override
    public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
        log.debug("postHandle method is running");
    }

    @Override
    public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
        log.debug("afterCompletion method is running");
    }
}

三、编写MvcConfig意思是对Mvc的配置,继承WebMvcConfigurer类

这个就相当于以前ssm中的springmvc的xml文件,里面做些对SpringMvc的配置

package cn.itcast.config;

import cn.itcast.interceptor.MyInterceptor;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

//SpringMvc配置  以前是配置文件
@Configuration
public class MvcConfig implements WebMvcConfigurer {

    /*
    写好的东西(拦截器)必须要配置才能生效
     */

    //添加拦截器配置
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(new MyInterceptor()).addPathPatterns("/**");//拦截一切路径
    }
}

四、控制层测试

@GetMapping("hello")
public String hello(){
    log.debug("xxxxxxxxxxxxxxxxxxx");
    System.out.println("????????????????????");
    return "hello SpringBoot";
}

访问页面localhost:8080/hello

Ex2ADf.md.png

日志

在类上添加@Slf4j注解,即可使用
log.debug(“xxxxxxxxxxxxxxxxxxx”);
log.error(“查询用户信息失败, id: {}”,id);
等打印日志

通用mapper

只要引入通用mapper就不需要再引入mybatis和jdbc的依赖了(她已经引入过了)

github地址:https://github.com/abel533/Mapper

<!--通用mapper-->
<dependency>
    <groupId>tk.mybatis</groupId>
    <artifactId>mapper-spring-boot-starter</artifactId>
    <version>2.0.3</version>
</dependency>

每日注解

  • 1、 @SpringBootConfiguration和@Configuration基本一样,只不过是声明此类为SpringBoot的配置类

  • 2、 @Component 组件,将此注解标注的类注入到Spring容器中管理。

  • 3、 @ComponentScan 包扫描,若没有写具体的扫描路径,则扫描此注解标注的类下的所有路径。

    @Component 和 @ComponentScan的使用目的不一样
    
    在某个类上使用@Component注解,表明当需要创建类时,这个被注解的类是一个候选类。就像是举手。
    
    @ComponentScan 用于扫描指定包下的类。就像看都有哪些举手了。
    
  • 4、 @EnableAutoConfiguration 启用自动配置开关
insist,on the road
-------------本文结束感谢您的阅读-------------