Spring Boot常用注解
自己重新整理一下吧。
首先是最常见的,请求路径相关的,主要就是Mapping:
@RequestMapping:一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径;
1
2
3
4
5
6
public class SysNoticeController extends BaseController
{
……
}@PostMapping:新建,insert数据
1
2
3
4
5
6
public AjaxResult add( SysNotice notice)
{
notice.setCreateBy(SecurityUtils.getUsername());
return toAjax(noticeService.insertNotice(notice));
}@GetMapping:获取,select数据
1
2
3
4
5
6
7
public TableDataInfo list(SysNotice notice)
{
startPage();
List<SysNotice> list = noticeService.selectNoticeList(notice);
return getDataTable(list);
}@PutMapping:修改,update数据
1
2
3
4
5
6
public AjaxResult edit( SysNotice notice)
{
notice.setUpdateBy(SecurityUtils.getUsername());
return toAjax(noticeService.updateNotice(notice));
}@DeleteMapping:删除,delete数据
1
2
3
4
5
public AjaxResult remove( Long[] noticeIds)
{
return toAjax(noticeService.deleteNoticeByIds(noticeIds));
}
其次是各个层次的,标明这个类属于什么类型的:
@SpringBootApplication:启动类,是个组合注解,里面包括@Configuration,@EnableAutoConfiguration,@ComponentScan等
1
2
3
4
5
6
7
8
9
public SpringBootApplication {……}@Controller:返回一整个页面,View
@RestController:控制层组件,包含@Controller和@ResponseBody,一般返回JSON
1
2
3
4
5
6
public RestController {……}@Service:业务层组件
@Configuration:配置类
@Component:组件类,泛指组件,组件不好归类可以使用这个
参数注解:
@PathVariable:路径变量。参数与大括号里的名字一样要相同
1
2
3
4RequestMapping("user/get/mac/{macAddress}")
public String getByMacAddress( String macAddress){
//do something;
}@RequestBody:返回结果直接写入HTTP response body中
功能性注解:
@Autowired:自动注入
1
2
private ISysNoticeService noticeService;@EnableAutoConfiguration:启用自动配置
@ComponentScan:指定路径下扫描组件,如果扫描到有@Component @Controller @Service等这些注解的类,则把
这些类注册为bean
@Bean:方法上,返回的对象注入到IOC容器中
这些差不多够他喝一壶了吧。。。感觉最常用的都有了。