天水市建设局网站公告,利为汇wordpress,怎么看网站有没有做301跳转,手机wap网站怎样从微信公众号打开1、什么是Spring
Spring是分层的 Java SE/EE应用 full-stack 轻量级开源框架#xff0c;以 IOC和AOP为内核。含有七大核心模块
2、Spring的七大模块 (1)Spring Core#xff1a;核心容器提供了Spring的基本功能。核心容器的核心功能是用IOC 容器来管理类的依赖关系#xff…1、什么是Spring
Spring是分层的 Java SE/EE应用 full-stack 轻量级开源框架以 IOC和AOP为内核。含有七大核心模块
2、Spring的七大模块 (1)Spring Core核心容器提供了Spring的基本功能。核心容器的核心功能是用IOC 容器来管理类的依赖关系Spring采用的模式是调用者不理会被调用者的实例的创建由Spring容器负责被调用者实例的创建和维护需要时注入给调用者。这是目前最优秀的解耦模式。
(2)Spring AOPSpring的AOP模块提供了面向切面编程的支持。SpringAOP采用的是纯Java实现。Spring AOP采用基于代理的AOP实现方案AOP代理由IOC 容器负责生成、管理依赖关系也一并由IOC 容器管理尽管如此Spring IOC 容器并不依赖于AOP这样我们可以自由选择是否使用AOP。
(3)Spring ORM提供了与多个第三方持久层框架的良好整合
(4)Spring DAO Spring进一步简化DAO开发步骤能以一致的方式使用数据库访问技术用统一的方式调用事务管理避免具体的实现侵入业务逻辑层的代码中
(5)Spring Context它是一个配置文件为Spring提供上下文信息提供了框架式的对象访问方法。Context为Spring提供了一些服务支持如对国际化(i18n)、电子邮件、校验和调度功能。
(6)Spring Web提供了基础的针对Web开发的集成特性例如多方文件上传利用Servlet listeners进行IoC容器初始化和针对Web的applicationContext.
(7)Spring MVC提供了Web应用的MVC实现。Spring的MVC框架并不是仅仅提供一种传统的实现它提供了一种清晰的分离模型在领域模型代码和web form之间。并且还可以借助Spring框架的其他特性
3、什么是Spring FactoryBean
spring中有两种Bean普通Bean和工厂Bean
spring提供了一个FactoryBean的工厂类接口可以通过实现接口来实例化Bean
FactoryBean接口中有三个方法 ①getObject 获取对象 ②getObjectType 获取对象类型 ③isSingleton 是否单例
4、Spring中bean的配置方式
1.xml文件中bean标签配置 2.配置类(springboot支持) 3.注解的方式 4.properties方式
5、FactoryBean和BeanFactory的区别
BeanFactory是一个工厂也就是一个容器是来管理和生产bean的FactoryBean是一个bean但是它是一个特殊的bean所以也是由BeanFactory来管理的它是一个接口他必须被一个bean去实现,不过FactoryBean不是一个普通的Bean它会表现出工厂模式的样子,是一个能产生或者修饰对象生成的工厂Bean
6、SpringBean的生命周期
首先应该定义Bean定义Bean的常用方式有三种(xml注解properties)定义后通过实现BeanDefinitionReader接口来读取Bean的定义在读取完bean的定义后通过实现BeanFactoryPostProcessor接口对Bean进行增强处理然后通过反射的方式创建Bean在对Bean进行初始化操作通过执行set方法对属性赋值在属性初始化后执行BeanPostProcessorBefore也就是Bean的前置增强处理前置处理增强后调用Bean的init方法初始化初始化后的执行BeanPostProcessorAfter也就是Bean的后置处理后置处理后就是完整的Bean
7、Bean Factory和 Application contexts 有什么区别 BeanFactory和ApplicationContext是Spring的两大核心接口都可以当做Spring的容器。其中ApplicationContext是BeanFactory的子接口。 BeanFactory是Spring里面最顶层的接口包含了各种Bean的定义读取bean配置文档管理bean的加载、实例化控制bean的生命周期维护bean之间的依赖关系。BeanFactory 简单粗暴可以理解为就是个 HashMapKey 是 BeanNameValue 是 Bean 实例。通常只提供注册put获取get这两个功能。我们可以称之为 “低级容器”。 ApplicationContext 可以称之为 “高级容器”。因为他比 BeanFactory 多了更多的功能。他继承了多个接口。因此具备了更多的功能。例如资源的获取支持多种消息例如 JSP tag 的支持对 BeanFactory 多了工具级别的支持等待,该接口定义了一个 refresh 方法用于刷新整个容器即重新加载/刷新所有的 bean。
源码下载https://gitee.com/charlinchenlin/koo-erp