(二)核心注解介绍

来源:互联网 发布:js 数组重新排序 编辑:程序博客网 时间:2024/06/06 07:47

核心注解介绍

Hello world!入门我们已经搞过了,但是对于那几个注解,还是一无所知,下面来介绍一下这些注解!

@Controller : 原Spring MVC注解!不多解释了。
@SpringBootApplication : 是Spring Boot的核心注解,它其实是一个组合注解


主要组合了以下注解
@SpringBootConfiguration 这是Spring Boot的项目注解,它也是一个组合注解

@Configuration :提到@Configuration就要提到他的搭档@Bean。使用这两个注解就可以创建一个简单的spring配置类,可以用来替代相应的xml配置文件。可以说就是替代原来的xml文件。@Bean就是xml中的每一个bean。在Spring Boot项目中,推荐使用@SpringBootConfiguration注解来替换@Configuration注解

@EnableAutoConfiguration : @EnableAutoConfiguration:能够自动配置spring的上下文,试图猜测和配置你想要的bean类,通常会自动根据你的类路径和你的bean定义自动配置。
如:我们添加了spring-boot-starter-web的依赖,项目中就会引入SpringMVC的依赖,内嵌tomcat的依赖,这个可以点开查看一下spring-boot-starter-web的pom文件中有。


@ComponentScan : 会自动扫描 @SpringBootApplication所在类的同级目录以及它的子目录下(就是HelloApplication这个类所在的包com.test.springboot) 标有@Component的类,并注册成bean,当然包括@Component下的子注解@Service,@Repository,@Controller。也可以使用basePackages 指定扫描的包。

项目结构

结构一般如下所示:


root package结构:com.test.springboot
应用启动类Application.java置于root package下,这样使用@ComponentScan注解的时候默认就扫描所在类的同级目录以及它的子目录
实体(Entity)置于com.test.springboot.dao包下
逻辑层(Service)置于com.test.springboot.service包下
controller层(web)置于com.test.springboot.controller层包下