zoukankan      html  css  js  c++  java
  • 跳槽季 | 干货分享: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">admin@nospam.com</prop>

    <prop key="support">support@nospam.com</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;

    }

  • 相关阅读:
    URL中编码问题
    java得到当前时间
    java 集合类详解
    java String 详解
    java context 讲解
    java代码优化
    oracle 面试题
    查找算法总结
    10个经典的排序算法
    时间复杂度,相关排序算法时间复杂度的比较
  • 原文地址:https://www.cnblogs.com/qf-dd/p/10401522.html
Copyright © 2011-2022 走看看