SpringBoot的简单使用
springboot越来越流行, 主要因为它具有如下特点:
- 简单方便, 无需复杂的配置文件
- jar包引用简单, 不需要太多的依赖(因为多数已被父工程引用)
- 功能完善、更加强大
- 受众广
集合通用mapper后的使用方法:
- 引入父工程依赖 spring-boot-starter-parent
- 添加所需要的启动器和依赖
- 编写代码:
- 启动类: 具有固定写法 – 一般在总包下创建,以便扫描所有其他子包下的文件, 值得一提的是, 这个启动类的位置也可以放置在其他位置, 但是要修改其包扫描属性
@MapperScan("")注解–扫描mapper, 此注解来自通用mapper, 也就是tk开头的包, 括号内写包扫描的位置, 即dao层类的位置 - 实体类:
添加 @ConfigurationProperties(prefix = “user”)注解, 会自动读取application.yml或properties配置文件, 且此类需要放置在容器中, 即, 添加@Component 注解
添加@Table(name=“表名”)注解, 用来创建表和实体类间的对应关系
需要强调的是, 实体类中的主键字段上方要添加@Id注解, 以指定主键 - Dao层: 无需再写抽象方法, 直接编写XXXMapper类继承Mapper即可, 此处需要指定实体类泛型T
- Service层: 实现类中调用通用Mapper的方法即可
- Controller中的注解@RestController – 代替了@Controller和@ResponseBody两个注解, @GetMapping或者@PostMapping等代替了@RequestMapping
- 配置文件–支持4中形式xml,yml,yaml,properties。常用的是yml
properties文件中的格式server.port=8888 (用于修改项目启动的端口号)
yml文件中的格式: 需要注意的是":“后面需要加空格;”-"后面也加空格, 如下:
- 启动类: 具有固定写法 – 一般在总包下创建,以便扫描所有其他子包下的文件, 值得一提的是, 这个启动类的位置也可以放置在其他位置, 但是要修改其包扫描属性
user:
id: 1
username: hua
age: 18
boyfriends:
- a
- b
- c
其他相关
日志设置(Lombok)
- 日志常用的4个级别从小到大分别是 debug info warn error
使用方法:
- 在yml中设置包和级别
logging:
level:
com.leyou.controller: info
com.leyou.mapper: debug
- 使用日志的类上添加@Slf4j注解
- log.debug(要输出的内容),或者log.info(要输出的内容)
拦截器设置
- 自定义一个实现 HandlerInterceptor 接口的拦截器
- 定义一个实现WebMvcConfigurer 接口的类, 并且添加@Configuration注解
- 重写里面的addInterceptors(InterceptorRegistry registry) 方法
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new MyInterceptor()) //把自己的拦截器加载到了拦截器注册中心
.addPathPatterns("/user/**") //拦截的路径
.excludePathPatterns("/user/hello1"); //放行的路径
}