@SpringBootApplication注解的作用
@SpringBootApplication注解其用途是
自动初始化Spring IOC容器
、
扫描并实例化Bean并自动配置组件参数
,它是一个复合注解,包含以下三个子注解的功能。
- @SpringBootConfiguration
SpringBootConfiguration是SpringBoot项目的配置注解, SpringBootConfiguration注解可以用java代码的形式实现spring中xml配置文件配置的效果,并会将当前类内声明的一个或多个以@Bean注解标记的方法的实例纳入到spring容器中,并且实例名就是方法名。
- @EnableAutoConfiguration
Spring Boot中引入了自动配置,让开发者利用起来更加的简便、快捷。比如内嵌的tomcat端口默认配置是8080,这些都属于Spring Boot自动配置的范畴,当然其自动配置相当多。
- @ComponentScan
@ComponentScan的作用就是根据定义的扫描路径,把符合扫描规则的类装配到spring容器中。
@Controller -- 控制器
@Service -- 服务类
@Repository -- 持久化类(DAO)
@Component -- 组件类
Spring Boot Controller控制器
如果你会Spring MVC,那学习Spring Boot就是零基础,因为Spring Boot就是利用Spring MVC的特性进行开发。
Controller控制器的职责
1.接收用户输入
2.处理业务逻辑
3.返回响应数据
@RestController与@Controller的区别
@RestController注解相当于@Controller + @ResponseBody 代表每一个Controller方法自动会将返回值序列化为JSON进行响应,@RestController必然返回JSON数据。
@Controller则是返回ModelAndView对象或者String,代表将请求交给某个模板(Freemarker)进行渲染称为HTML响应输出,@Controller可以返回HTML或者
JSON序列化。
Jackson是Spring Boot默认的JSON序列化组件
Jackson 是一个 Java 的用来处理 JSON 格式数据的类库,性能非常好,Spring Boot将其作为默认的JSON序列化组件进行应用。