在Spring的.xml配置文件中,bean有五种autowire模式:byName,byType,constructor,autodetect,no;
1 byName:这个很简单,直接按照名字进行查找
public class UserService {
private UserDAO userDAO;
public void add(User user) {
userDAO.save(user);
}
public UserDAO getUserDAO() {
return userDAO;
}
public void setUserDAO(UserDAO userDAO) {
this.userDAO = userDAO;
}
}
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean name="userDAO" class="com.bjsxt.dao.impl.UserDAOImpl"></bean>
<bean id="userService" class="com.bjsxt.service.UserService" scope="prototype" autowire="byName"></bean>
</beans>
2. byType:按照类型进行查找
<bean name="u" class="com.bjsxt.dao.impl.UserDAOImpl"></bean>
<bean id="userService" class="com.bjsxt.service.UserService" scope="prototype" autowire="byType"></bean>
3.constructor:直接根据构造函数进行匹配
4.autodetect:先按constructor匹配,再按byType匹配
5 no:不用任何模式进行匹配,这个也是默认的匹配模式
注:
如果所有的bean都用同一种,可以使用beans的属性:default-autowire
<!--EndFragment-->
分享到:
相关推荐
`Spring`支持多种自动装载模式,包括但不限于`byname`、`byType`、`constructor`以及`autodetect`。 #### 5. Spring 中使用事务的方法 - **知识点**: `Spring`框架中的事务管理机制。 - **选项解析**: - **A**. ...
在Java的Spring框架中,Bean的自动装载(Autowiring)是一种简化依赖注入的方式,它允许Spring容器自动管理Bean之间的依赖关系,而无需在XML配置文件中显式指定。Spring提供了几种自动装配模式,帮助开发者更加灵活...
Spring的ioc原理是整个框架的基石,它通过控制反转模式,使得对象的依赖关系在运行时由容器动态注入,大大提高了应用程序的模块化和可测试性。通过IoC,开发者可以更加专注于业务逻辑的实现,而无需担心资源获取和...
- **自动装载**: Spring可以根据依赖关系自动匹配并注入相应的Bean。 **知识点2:构造方法注入的特点** - **优点**: 可以确保依赖关系的完整性,特别适用于不可变对象或者必需的依赖关系。 - **缺点**: 当依赖关系...
2.3.4. 对AspectJ装载时织入(AspectJ load-time weaving)的支持 2.4. 中间层 2.4.1. 在XML里更为简单的声明性事务配置 2.4.2. 对Websphere 事务管理的完整支持 2.4.3. JPA 2.4.4. 异步的JMS 2.4.5. JDBC ...
2.3.4. 对AspectJ装载时织入(AspectJ load-time weaving)的支持 2.4. 中间层 2.4.1. 在XML里更为简单的声明性事务配置 2.4.2. 对Websphere 事务管理的完整支持 2.4.3. JPA 2.4.4. 异步的JMS 2.4.5. JDBC ...
<context:spring-configured/>元素用于激活Spring的自动配置特性,使Spring能够自动检测并应用@Configurable注解。 - **3.6.5 初探元素** 元素用于启用Spring的即时编译期编织(LTW)功能,允许在类加载时插入切面...
以上知识点覆盖了Spring框架的基本概念及其与Hibernate、Struts等技术的集成方式,同时还涉及了Spring的通知类型、依赖注入、自动装载等内容,有助于理解和掌握Spring框架的核心功能和应用场景。
4. **`aspectjweaver.jar`**:这个库是Spring与AspectJ集成的关键,它是一个类装载器代理,可以在Spring应用上下文中自动织入AspectJ切面。当你在Spring配置中启用`<aop:aspectj-autoproxy>`时,Spring会使用AspectJ...
Bean 的注入有两种方式:构造方法注入和自动装载。使用构造方法注入可以在创建对象时完成依赖关系的建立。 四、ApplicationContext 接口 ApplicationContext 接口是 beanfactory 的子接口,提供了对资源文件的访问...
- **自动装配**:Spring框架如何自动为Bean寻找合适的依赖。 - **Bean之间的关系**:Bean如何通过继承和依赖关系相互关联。 - **Bean的作用域**:介绍了singleton、prototype等作用域类型。 - **使用外部属性文件**...
- **Spring的核心模块功能** 主要包括依赖注入和工厂模式,即管理 Bean 的创建、装配和销毁等过程。 #### Spring模块间的关系 - **独立性**:Spring 的各个模块设计上具有较高的独立性,可以单独使用或结合使用。 -...
综上所述,Java基础面试题涉及了语言特性和设计模式等多个方面,而Spring框架的相关知识点则重点关注于事务管理和配置等方面。这些内容对于Java开发者而言是非常重要的基础知识,掌握它们能够帮助开发者更好地理解和...
- **IoC自动装载(Autowire)**:当bean定义中没有明确指定依赖注入的方式时,Spring会尝试根据特定规则自动注入bean。例如,使用`<bean autowire="byName"/>`或`<bean autowire="byType"/>`。 ##### AOP(面向切面...
4. Spring的自动装载模式(Auto-wiring)包括:autodetect、byName、byType等,允许Spring容器根据名称、类型或其他策略自动装配bean的依赖。 5. 在Spring中,使用事务的方法包括代理(proxies)、声明式(declaratively...
本篇文档对后端开发中的关键知识点进行了全面而深入的梳理,涵盖了Java语言基础、JVM、操作系统、网络技术、数据库、缓存、多线程、Spring框架等方面的核心概念和技术要点。以下是针对文档标题、描述以及部分内容中...
3. **自动扫描装载**:通过`<context:component-scan>`标签,Spring可以自动扫描指定包(如`com.jun`)下的类,寻找标记为@Service、@Repository、@Controller等注解的类,并将它们纳入Spring容器管理。 4. **配置...
4. **AOP(面向切面编程)**:Spring 的AOP模块提供了面向切面编程的支持,允许开发者定义“切面”,在运行时自动织入到其他对象中,实现了如日志记录、事务管理等功能。 5. **Aspects**:Spring AOP模块还包括对...
Spring MVC 是一个基于 Java 的轻量级 Web 开发框架,它是 Spring 框架的一部分,主要用于构建 MVC(Model-View-Controller)模式的 Web 应用程序。在使用 Spring MVC 进行开发时,需要引入一系列的依赖 JAR 包来...
- 在Spring项目中,你需要在配置文件中声明对AspectJ的支持,并指定 weaving 模式。你可以选择在编译时使用Maven或Gradle插件进行静态织入,或者在运行时使用`<aop:aspectj-autoproxy>`标签启用动态织入。 总结来...