`

Spring自动检测组件

阅读更多

要想检测这些类并注册相应的bean,需要在xml中包含以下元素,其中basePackage是两个类的公共父包

 

先看beans.xml的配置(<context:component-scan base-package="com.lbx" />

)

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
           http://www.springframework.org/schema/context
           http://www.springframework.org/schema/context/spring-context-2.5.xsd">
<context:annotation-config />
<context:component-scan base-package="com.lbx" />

</beans>

 

 

要注册的<bean>

package com.lbx.service.impl;


import javax.annotation.Resource;

import org.springframework.stereotype.Component;


import com.lbx.dao.UserDao;
import com.lbx.po.User;
import com.lbx.service.UserService;

@Component("userService")
public class UserServiceImpl implements UserService {
	private UserDao userDao;
	
	public void init(){
		System.out.println("UserServiceImpl.init()");
	}
	
	@Override
	public void add(User user) {
		userDao.add(user);
	}
	
	public UserDao getUserDao() {
		return userDao;
	}
	@Resource//(name="userDao")   //最好用@Resource 不要用@Autowired
	public void setUserDao( UserDao userDao) { 
		this.userDao = userDao;
	}

	public void destroy(){
		System.out.println("UserServiceImpl.destroy()");
	}
	
}

 

分享到:
评论

相关推荐

    Spring demo 自动检测注解

    综上所述,"Spring demo 自动检测注解"主要展示了Spring如何利用注解进行组件扫描、依赖注入、以及生命周期管理。通过这个简单的例子,你可以了解到Spring如何通过自动检测和管理bean,使应用程序更加灵活且易于维护...

    01.Spring基础及组件使用1

    4. **组件扫描**:Spring可以自动检测并管理带有特定注解(如@Service、@Repository和@Controller)的类,这一功能被称为组件扫描。这简化了配置,使得我们可以专注于业务逻辑。 5. **AOP(Aspect Oriented ...

    Spring扫描器—spring组件扫描使用详解

    在Spring框架中,`&lt;context:component-scan/&gt;`元素是核心组件扫描的基石,它允许我们自动检测和注册beans,极大地简化了配置工作。这篇博客将深入探讨这个功能强大的特性,以及如何在实际开发中有效利用它。 一、...

    spring 的自动代理

    3. **Bean `autoProxyCreator`** - 实例化 `DefaultAdvisorAutoProxyCreator` 类,这个类会自动检测所有 Advisor 并为符合条件的 Bean 创建代理。 4. **Bean `advisor`** - 这是一个 `RegexpMethodPointcutAdvisor`...

    spring组件扫描contextcomponent-scan使用详解.pdf

    在 Spring 框架中,组件扫描是指通过注解和 XML 配置来自动检测和加载Bean的过程。下面将详细介绍标签的使用方式和原理。 一、标签的作用 标签是 Spring 框架中用于组件扫描的核心标签。该标签可以自动检测和加载...

    Spring2.5 自动扫描classpath

    标题“Spring2.5 自动扫描classpath”涉及的是Spring框架中的一个重要特性——自动组件扫描(Auto-Component Scanning)。在Spring 2.5版本中,这个功能极大地简化了配置,使得开发者无需显式地声明每个bean,只需在...

    Spring的自动扫描注入.docx

    Spring框架提供了自动扫描的功能,通过该功能可以自动检测并注册带有特定注解的类为Spring管理的bean,从而极大地减少了显式配置的需求。这一特性主要通过`&lt;context:component-scan&gt;`元素实现。 ##### 配置示例: ...

    基于spring+spring mvc+hibernate的智能农业信息管理系统

    首先,Spring作为Java领域中的轻量级框架,其核心特性是依赖注入(Dependency Injection,简称DI),通过控制反转(Inversion of Control,简称IoC)来实现组件间的解耦,提高系统的灵活性和可测试性。Spring MVC是...

    spring

    - **自动装配**:Spring可以自动检测并注入Bean之间的依赖关系,无需显式配置。 - **依赖检查**:Spring可以检查应用程序中是否存在未使用的Bean引用,帮助开发者发现潜在的问题。 #### 3.4 定制Bean的行为 - **...

    spring学习之四“自动装配”

    5. **autodetect**:Spring会尝试检测bean的构造函数或setter方法,如果找到有@Autowired注解的,就进行自动装配。 二、使用自动装配 1. **@Autowired**注解:这是Spring提供的用于标记需要自动装配的字段、构造器...

    JavaEE spring自动实现AOP代理

    - Spring通过`DefaultAdvisorAutoProxyCreator`组件自动创建代理。当它检测到容器中有Advisor或Aspect对象时,会为匹配的bean创建代理。 - `@EnableAspectJAutoProxy`注解可以启用基于AspectJ的自动代理,使Spring...

    SpringCloud面试题及答案.pdf

    #### 三、SpringCloud核心组件详解 3. **核心组件介绍** - **Eureka**: 服务注册与发现组件,为服务提供注册中心,支持服务间的相互发现。 - **Feign**: 一种声明式的HTTP客户端,它基于动态代理机制工作。通过...

    spring-ide插件

    8. **Spring Boot 支持**:随着 Spring Boot 的流行,Spring IDE 插件也增加了对 Spring Boot 项目的良好支持,包括自动配置检测、Actuator 监控视图等。 9. **Maven 和 Gradle 集成**:Spring IDE 支持基于 Maven ...

    02.Spring组件及aop基本使用操作1

    - `@Autowired`:Spring默认按类型匹配bean进行自动装配,如果存在多个候选bean,可以通过`@Qualifier`指定特定的bean。此外,`@Autowired`可以应用于字段、方法和构造器。 - `@Resource`:与`@Autowired`相似,但...

    简易实现Spring流程代码

    这种方式更加直观,易于测试,同时也支持自动检测组件(@ComponentScan)。 3. 注解配置:Spring框架还支持在类或方法上使用注解进行配置,如`@Autowired`用于自动装配依赖,`@Service`、`@Repository`、`@...

    spring的详细介绍

    10. 自动装配(Auto-Wiring):Spring自动检测并满足Bean之间的依赖关系,但这种方式可能导致不可预测的结果,因此通常不推荐使用。可以通过`autowire`属性设置自动装配模式。 11. 依赖检查(Dependency Checking)...

    Spring boot 热加载 springloaded-1.2.4.RELEASE JAR包

    SpringLoaded是Spring框架的动态代理加载器,它实现了Java的类加载机制,可以在应用运行时自动检测源代码的变化,并实时重载修改后的类,从而避免了每次修改代码都需要重新构建和启动应用的繁琐步骤。SpringLoaded ...

    基于springboot的自动更新

    标题中的“基于SpringBoot的自动更新”指的是在SpringBoot应用中实现自动化更新的功能,使得应用程序能够在运行时自动检测并下载最新的版本,无需手动重启服务。这通常涉及到版本控制、网络请求、文件处理等多个技术...

Global site tag (gtag.js) - Google Analytics