spring boot学习 初级入门
来源:互联网 发布:安卓调音软件 编辑:程序博客网 时间:2024/06/05 19:58
学习时只关心技术,开发时只关心业务
spring boot
习惯优于配置原则
spring 简史:第一阶段:xml配置 第二阶段:注解配置 第三阶段:java配置
注解配置和xml配置哪个更好? 应用的基本配置(如数据库配置)用xml,业务配置使用注解
spring 是模块化的,意味着可以只使用需要的spring模块
使用@ComponentScan(包名)注解一个类时,该类为配置类(此类里面可以什么都不用写),该类会自动扫描包名下所有的@Service,@Component,@Repository,@Controller的类,并把它们注册为Bean
当在别的地方需要使用这些Bean时,这样使用:
AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(配置类的类名.class);
context.getBean(要使用的Bean的类名.class);
context.close();
java配置是通过@Configuration和@Bean来实现的
@Configuration声明当前类时一个配置类,相当于一个Spring配置的xml文件。
@Bean注解在方法上,声明当前方法的返回值是一个Bean。
Bean的初始化和销毁
@PostConstruct注解注释的方法,会在Bean的初始化完成之后执行,一般用来注释init方法
@PreDestory注解注释的方法,会在Bean销毁之前执行,一般用来注释destory方法
Filter和Interceptor的区别
Filter是Servlet容器支持的,而Interceptor是spring容器内的,是Spring框架支持的。我觉得这是根本的区别,很多其他的区别归根到底都是这个原因导致的,
比如Filter只能在web项目中使用,而Interceptor既可以在web项目中使用,也可以在Application和Swing中使用;
Filter无法使用到Spring中的任何资源,如Bean,事物,但是Interceptor则都可以使用,因为它是Spring框架支持的;
Filter只能在Servlet前后起作用,但是Interceptor可以深入到方法的前后,异常的抛出前后,具有更大的弹性,所以Spring框架的项目中,应该优先使用Interceptor。
为什么Spring boot框架中的Appliaction类要放在最外层目录?
个人理解:因为Application类含有@SpringBootApplication注解,这是一个组合注解,相当于@Configuration,@EnableAutoConfiguration和@ComponentScan
三个注解的组合,@ComponentScan注解是用来扫描包下的所有组件的,默认的搜索路径是该注解注释的类所在的包,所以Application要是想要扫描到整个项目中的组件,就只能放在最外层,否则放在任意一个包下,都只能扫描到该包下的组件。
spring boot
习惯优于配置原则
spring 简史:第一阶段:xml配置 第二阶段:注解配置 第三阶段:java配置
注解配置和xml配置哪个更好? 应用的基本配置(如数据库配置)用xml,业务配置使用注解
spring 是模块化的,意味着可以只使用需要的spring模块
使用@ComponentScan(包名)注解一个类时,该类为配置类(此类里面可以什么都不用写),该类会自动扫描包名下所有的@Service,@Component,@Repository,@Controller的类,并把它们注册为Bean
当在别的地方需要使用这些Bean时,这样使用:
AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(配置类的类名.class);
context.getBean(要使用的Bean的类名.class);
context.close();
java配置是通过@Configuration和@Bean来实现的
@Configuration声明当前类时一个配置类,相当于一个Spring配置的xml文件。
@Bean注解在方法上,声明当前方法的返回值是一个Bean。
Bean的初始化和销毁
@PostConstruct注解注释的方法,会在Bean的初始化完成之后执行,一般用来注释init方法
@PreDestory注解注释的方法,会在Bean销毁之前执行,一般用来注释destory方法
Filter和Interceptor的区别
Filter是Servlet容器支持的,而Interceptor是spring容器内的,是Spring框架支持的。我觉得这是根本的区别,很多其他的区别归根到底都是这个原因导致的,
比如Filter只能在web项目中使用,而Interceptor既可以在web项目中使用,也可以在Application和Swing中使用;
Filter无法使用到Spring中的任何资源,如Bean,事物,但是Interceptor则都可以使用,因为它是Spring框架支持的;
Filter只能在Servlet前后起作用,但是Interceptor可以深入到方法的前后,异常的抛出前后,具有更大的弹性,所以Spring框架的项目中,应该优先使用Interceptor。
为什么Spring boot框架中的Appliaction类要放在最外层目录?
个人理解:因为Application类含有@SpringBootApplication注解,这是一个组合注解,相当于@Configuration,@EnableAutoConfiguration和@ComponentScan
三个注解的组合,@ComponentScan注解是用来扫描包下的所有组件的,默认的搜索路径是该注解注释的类所在的包,所以Application要是想要扫描到整个项目中的组件,就只能放在最外层,否则放在任意一个包下,都只能扫描到该包下的组件。
阅读全文
0 0
- spring boot学习 初级入门
- spring boot 入门学习
- spring boot 入门学习
- spring boot入门学习
- Spring Boot入门学习
- Spring Boot 入门学习(1)
- spring boot的入门学习
- SPRING-BOOT入门学习记录
- 《spring-boot学习》-03-入门
- spring-boot入门学习笔记
- spring-boot入门学习笔记
- Spring boot简单入门学习
- [Spring入门学习笔记][Spring Boot]
- Spring-Boot学习(1)-----Spring-Boot入门
- Spring Boot学习入门篇(二)--使用Spring Boot
- Spring Boot学习笔记-入门篇
- springboot学习(二) Spring Boot 快速入门
- spring boot学习系列:入门第一篇
- 在django的子模版中加入js或者css文件
- echarts x/y轴坐标文字过长解决办法-换行
- Scrapy爬虫框架(二):导出爬取结果
- 通过C#/.NET API使用CNTK
- Mybatis源码解析
- spring boot学习 初级入门
- leetcode题解-18. 4Sum
- oracle 解锁表
- JAVA 设计模式抽象工厂模式
- 了解svmlight的模型策略算法
- Selective Search for Object Recoginition
- 设置通用jsp里面的路径
- Google无法登陆解决方法
- node 判断打开的是文件 还是 文件夹