SpringBoot常用注解
MVC
M:
model
数据持久层V:
view
页面表现层C:
controller
视图控制层
Class Annotation
@RestController
作用:用于返回
JSON
XML
等数据,但是不能返回HTML
数据.等同于
@ResponseBody
和@Controller
结合使用
示例代码
@RestController
public class HelloWorldController{
@RequestMapping("/hello")
public String hello(){
return "hello,SpringBoot!";
}
}
@Controller
作用:用于标注
控制器
MVC 开发模式中代表C
(控制器)
示例代码
@Controller
public class HelloWorldMVCController(){
@RequestMapping("/helloworld")
@ResponseBody
public String helloWorld() throws Exception{
return "Hello,Spring Boot!";
}
}
@Service
作用:用于声明一个
业务处理类
,用于标注服务层,处理业务逻辑。
示例代码
@Service
public class ArticleServiceImpl implements ArticleService{
@Autowired
private ArticleRepository articleRepository;
@Override
public Article findArticleById(long id){
return articleRepository.findById(id);
}
}
@Repository
作用:用于标注
数据访问层
@Component
作用: 用于将普通
POJO
实例化到Spring容器中,
@Configuration
作用:用于标注
配置类
,由Spring容器自动处理,作为Bean
的载体,用来指示一个类的声明。
@Autowired
作用:用来实现
依赖注入
(byType)
@Resource
作用: 和
@Autowired
同样来实现依赖注入
(byName)
@RequestMapping
作用:用来处理
请求
地址映射
如果作用在类上,则表示所有请求方法都是以该地址为父路径的。
@Transactional
作用:用于声明
事务
事务:在出现异常的情况下,保证数据的一致性;数据提交操作回滚至异常发生前的状态
@Qualifier
作用:为bean指定名称,随后在
通过名字引用bean
通常和
@Autowired
一起使用
Method Annotation
@RequestBody
作用:用来处理
JSON
XML
格式的数据,通过@RequestBody
可以将请求体中的(JSON/XML
)绑定到对应的 Bean 上,也可以分别绑定到别的对应字符串上。
@PathVariable
作用:用于
获取
路径中的参数
@Bean
作用:代表产生一个Bean ,并交给Spring 管理,用于封装数据,MVC中对应的是
M
@ResponseBody
作用:通过转换器将控制器方法中方法返回的对象转化为指定格式然后吸入Response对象Body区。常用来
返回数据
.
Others
@EnableAutoConfiguration
作用:提供
自动配置
@SpringBoootApplication
作用:用来
启动入口类
@EnableAsync
作用:开启
异步注解
功能
@ComponentScan
作用:用来
扫描组件
,和自动装配Bean
@Aspec
作用:用来标注
切面
@ControllerAdvice
作用: 包含@component可以被扫描到,
统一处理
异常。
@ExceptionHandler
作用:用在方法上,表示遇到
异常
则执行这个方法。
@Value
作用:用于获取
配置文件
中的值。