声明Bean注解Ioc
@Component
@Controller/@RestController:用于Web层,处理HTTP请求
@RestController=@Controller+@ReponseBody
@Service:常用于标注服务层组件
@Repository:用于数据访问层(DAO)
bean对象的默认名称为类名首字母小写
DI依赖注入注解
对类中的成员变量赋值,springboot项目启动时自动做
@Autowired:默认根据类型进行注入
同类型下多个bean解决
@Primary优先使用
@Autowired+@Qualifier("beanName")
@Resoure(name="xxx")
jdk定义
@SpringBootApplication
声明启动类/引导类注解
组件扫描,默认扫描当前包及其子包
请求和响应参数
@ResponseBody
@RequestBody
将方法的返回值直接响应给浏览器/前端;如果返回值是一个对象/集合,会先转成json,再响应
请求参数
@RequestParam("id"):将前端传递的请求参数绑定给方法形参
前端传递的参数名与方法形参名不一致
required默认为true
普通参数
?key=value&key&key1=value1
@RequestBody
将前端传递的json格式的数据封装到对象/集合中
json中的key与对象的属性名一致,类型也要一致
Content-type:application/json
@PathVariable
获取路径变量
/depts/{id}/{a}
/depts/1/abc
/1/2/3也可以用集合来接受List
上传文件MulipartFile
多个类型不同的普通参数
实体类,不要加注解
多个类型相同的参数
用集合,添加@RequestParam
请求路径与方法
@RequestMapping
类上
方法上
完整路径
类上加方法上
接受所有的请求方式
method=RequestMethod.get
@GetMapping
GET请求
查询
@PostMapping
POST请求
添加
@PutMapping
PUT请求
修改
@DeleteMapping
Delete请求
删除
RESTful
特点
路径代表资源
请求方式代表操作类型
异常处理