跳槽季 | 干货分享:Java开发面试题,三个重量级spring面试题

一年又一年,又到了寻找新机会的绝佳时机,Java程序员,为了自己的钱途,怎么也得拼上自己的所有绝学。今天给大家分享的是在面试中,三个重量级的题,关于spring的,助大家一臂之力!



1、怎样用注解的方式配置Spring?

Spring在2.5版本以后开始支持用注解的方式来配置依赖注入。可以用注解的方式来替代XML方式的bean描述,可以将bean描述转移到组件类的内部,只需要在相关类上、方法上或者字段声明上使用注解即可。注解注入将会被容器在XML注入之前被处理,所以后者会覆盖掉前者对于同一个属性的处理结果。

注解装配在Spring中是默认关闭的。所以需要在Spring文件中配置一下才能使用基于注解的装配模式。如果你想要在你的应用程序中使用关于注解的方法的话,请参考如下的配置。

<beans>

<context:annotation-config/>

<!-- bean definitions go here -->

</beans>

在 <context:annotation-config/>标签配置完成以后,就可以用注解的方式在Spring中向属性、方法和构造方法中自动装配变量。

下面是几种比较重要的注解类型:

1.@Required:该注解应用于设值方法。

2.@Autowired:该注解应用于有值设值方法、非设值方法、构造方法和变量。

3.@Qualifier:该注解和@Autowired注解搭配使用,用于消除特定bean自动装配的歧义。

4.JSR-250 Annotations:Spring支持基于JSR-250 注解的以下注解,@Resource、@PostConstruct 和 @PreDestroy。

2、如何向Spring Bean中注入一个Java.util.Properties?

第一种方法是使用如下面代码所示的<props> 标签:

<bean id="adminUser" class="com.howtodoinjava.common.Customer">

<!-- java.util.Properties -->

<property name="emails">

<props>

<prop key="admin">[email protected]</prop>

<prop key="support">[email protected]</prop>

</props>

</property>

</bean>

也可用”util:”命名空间来从properties文件中创建出一个propertiesbean,然后利用setter方法注入bean的引用。

3、请解释Spring Bean的自动装配?

在Spring框架中,在配置文件中设定bean的依赖关系是一个很好的机制,Spring容器还可以自动装配合作关系bean之间的关联关系。这意味着Spring可以通过向Bean Factory中注入的方式自动搞定bean之间的依赖关系。自动装配可以设置在每个bean上,也可以设定在特定的bean上。

下面的XML配置文件表明了如何根据名称将一个bean设置为自动装配:

<bean id="employeeDAO" class="com.howtodoinjava.EmployeeDAOImpl" autowire="byName" />

除了bean配置文件中提供的自动装配模式,还可以使用@Autowired注解来自动装配指定的bean。在使用@Autowired注解之前需要在按照如下的配置方式在Spring配置文件进行配置才可以使用。

<context:annotation-config />

也可以通过在配置文件中配置AutowiredAnnotationBeanPostProcessor 达到相同的效果。

<bean class ="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor"/>

配置好以后就可以使用@Autowired来标注了。

@Autowired

public EmployeeDAOImpl ( EmployeeManager manager ) {

this.manager = manager;

}


猜你喜欢

转载自blog.51cto.com/14070466/2351876