-
Spring(SpringBoot)
-
声明Bean注解
- @Component
- @Controller / @RestController
- @Service
- @Repository
- @mapper
-
DI依赖注入注解
-
@Autowired : 默认根据类型进行注入
-
同类型下多个bean解决(优先实现)
- @Primary
- @Autowired + @Qualifier("xxx")
- @Resource(name="xxx")(非spring自带注解)
-
-
- @SpringBootApplication
-
- 声明启动类/引导类注解
- 组件扫描, 默认扫描当前包及其子包
@MapperScan(basePackages = "xxxx(那个包下的路径)")
-@MapperScan`专用于MyBatis Mapper接口扫描 @ComponentScan` 用于Spring组件扫描
-
- 其他注解
- 请求参数
- @RequestParam("id") : 将前端传递的请求参数, 绑定给方法形参 ;
前端传递的参数名 与 方法形参名 不一致 .
-
@RequestParam("id") : 属性如下
1 .value或者name:表示指定请求参数的名称
2 .required() 表示参数是否为必须,默认值true. 3 .defaultValue() 如果required属性为false时,可以通过该属性为参数指定默认值- @RequestBody - 将前端传递的json格式的数据封装到对象/集合中 - @PathVariable - 获取路径变量-
请求路径
-
@RequestMapping(类上,方法上都行)
-
@PostMapping 增
-
@DeleteMapping 删
-
@PutMapping 改
-
@GetMapping 查
-
-
-
Mybatis
-
@Mapper
-
声明当前就是mybatis的一个持久层的接口,Mapper接口。
-
将实现类对象(代理对象)交给IOC容器管理, bean对象
-
-
写sql语句时应用
- @Insert
- @Select
- @Update
- @Delete
Logback:记录项目运行中的日志信息,方便调试、排错、监控.......
@Slf4j
提供日志
四、动态SQL
<where>
<if test="条件">
条件成立,这里的SQL会进行拼接
</if>
</where>
where标签内部的SQL生效,会为SQL加上where关键字,同时会去除拼接SQL最前面的多余的AND或者OR
@DateTimeFormat(pattern = "yyyy-MM-dd")
// yyyy-MM-dd 为前端传递的时间格式
@MapperSan作用与功能
- 自动发现 Mapper 接口
无需手动逐个注册 Mapper 接口,Spring 启动时会自动扫描指定包路径下的所有 Mapper 接口。 - 生成代理实现类
为扫描到的 Mapper 接口自动创建动态代理对象,并注入到 Spring 容器中。 - 简化配置
替代 XML 配置中的<mybatis:scan>或手动声明@Mapper的方式。