javaSpring面試題,安排
Beans
spring中Bean的作用域
singleton:
prototype:
request:
session:
global Session:
spring中Bean的生命周期
什麽是 spring bean?
spring 提供了哪些配置方式?
什麽是 spring 的內部 bean?
自動裝配有哪些方式
自動裝配有什麽局限
Spring中依賴註入方式
Spring Framework 中的模塊
Spring 應用程序的組件
Spring IOC 容器
spring 中的兩種 IOC 容器
Spring IoC 的實現機制
註解
基於註解的容器配置
如何在 spring 中啟動註解裝配?
@Component, @Controller, @Repository, @Service 有何區別?
@Required 註解有什麽用?
@Qualifier 註解有什麽用?
@RequestMapping 註解有什麽用?
數據訪問
spring DAO 有什麽用?
Spring DAO 拋出的異常
spring JDBC API 中存在哪些類?
spring 支持的事務管理類型
spring 支持哪些 ORM 框架
AOP
Aspect
切點(JoinPoint)
通知(Advice)
有哪些類型的通知(Advice)?
Spring AOP and AspectJ AOP 有什麽區別?
WebApplicationContext
Beans
spring中Bean的作用域
singleton:
Spring IoC容器中只會存在一個共享的Bean實例,無論有多少個Bean引用它,始終指向同一對象。Singleton作用域是Spring中的缺省作用域。
prototype:
每次通過Spring容器獲取prototype定義的bean時,容器都將創建一個新的Bean實例,每個Bean實例都有自己的屬性和狀態,而singleton全局只有一個對象。
request:
在一次Http請求中,容器會返回該Bean的同一實例。而對不同的Http請求則會產生新的Bean,而且該bean僅在當前Http Request內有效。
session:
在一次Http Session中,容器會返回該Bean的同一實例。而對不同的Session請求則會創建新的實例,該bean實例僅在當前Session內有效。
global Session:
在一個全局的Http Session中,容器會返回該Bean的同一個實例,僅在使用portlet context時有效。
spring中Bean的生命周期
實例化一個Bean,也就是我們通常說的new。
按照Spring上下文對實例化的Bean進行配置,也就是IOC註入。
如果這個Bean實現了BeanNameAware接口,會調用它實現的setBeanName(String beanId)方法,此處傳遞的是Spring配置文件中Bean的ID。
如果這個Bean實現了BeanFactoryAware接口,會調用它實現的setBeanFactory(),傳遞的是Spring工廠本身(可以用這個方法獲取到其他Bean)。
如果這個Bean實現了ApplicationContextAware接口,會調用setApplicationContext(ApplicationContext)方法,傳入Spring上下文。
如果這個Bean關聯了BeanPostProcessor接口,將會調用postProcessBeforeInitialization(Object obj, String s)方法,BeanPostProcessor經常被用作是Bean內容的更改,並且由於這個是在Bean初始化結束時調用After方法,也可用於內存或緩存技術。
如果這個Bean在Spring配置文件中配置了init-method屬性會自動調用其配置的初始化方法。
如果這個Bean關聯了BeanPostProcessor接口,將會調用postAfterInitialization(Object obj, String s)方法。
當Bean不再需要時,會經過清理階段,如果Bean實現了DisposableBean接口,會調用其實現的destroy方法。
最後,如果這個Bean的Spring配置中配置了destroy-method屬性,會自動調用其配置的銷毀方法。
什麽是 spring bean?
它們是構成用戶應用程序主幹的對象。
Bean 由 Spring IoC 容器管理。
它們由 Spring IoC 容器實例化,配置,裝配和管理。
Bean 是基於用戶提供給容器的配置元數據創建。
spring 提供了哪些配置方式?
基於 xml 配置
bean 所需的依賴項和服務在 XML 格式的配置文件中指定。這些配置文件通常包含許多 bean 定義和特定於應用程序的配置選項。它們通常以 bean 標簽開頭。例如:
<bean id="studentbean" class="org.edureka.firstSpring.StudentBean">
<property name="name" value="Edureka"></property>
</bean>
基於註解配置
可以通過在相關的類,方法或字段聲明上使用註解,將 bean 配置為組件類本身,而不是使用 XML 來描述 bean 裝配。默認情況下,Spring 容器中未打開註解裝配。因此,您需要在使用它之前在 Spring 配置文件中啟用它。例如:
<beans>
<context:annotation-config/>
javaSpring面試題,安排