Skip to content

io microsphere spring context annotation AnnotatedBeanCapableImportBeanDefinitionRegistrar

github-actions[bot] edited this page Jul 11, 2026 · 8 revisions

AnnotatedBeanCapableImportBeanDefinitionRegistrar

Type: Class | Module: microsphere-spring-context | Package: io.microsphere.spring.context.annotation | Since: 1.0.0

Source: microsphere-spring-context/src/main/java/io/microsphere/spring/context/annotation/AnnotatedBeanCapableImportBeanDefinitionRegistrar.java

Overview

An abstract base class for ImportBeanDefinitionRegistrar implementations that are driven by a specific annotation type A.

This class extends AnnotatedBeanCapableImportCandidate to provide annotation-driven import capabilities and implements ImportBeanDefinitionRegistrar to handle bean definition registration.

Example Usage

{@code
public class MyFeatureRegistrar extends AnnotatedBeanCapableImportBeanDefinitionRegistrar {

### Declaration

```java
public abstract class AnnotatedBeanCapableImportBeanDefinitionRegistrar extends
```

**Author:** Mercy

## Version Information

- **Introduced in:** `1.0.0`
- **Current Project Version:** `0.2.36-SNAPSHOT`

## Version Compatibility

This component is tested and compatible with the following Java versions:

| Java Version | Status |
|:---:|:---:|
| Java 17 | ✅ Compatible |
| Java 21 | ✅ Compatible |
| Java 25 | ✅ Compatible |

## Examples

```java
public class MyFeatureRegistrar extends AnnotatedBeanCapableImportBeanDefinitionRegistrar {

    @Override
    protected void registerBeanDefinitions(AnnotationMetadata metadata,
                                           BeanDefinitionRegistry registry,
                                           BeanNameGenerator importBeanNameGenerator,
                                           ResolvablePlaceholderAnnotationAttributes attributes) {
        String featureName = attributes.getString("value");
        if (StringUtils.hasText(featureName)) {
            GenericBeanDefinition beanDefinition = new GenericBeanDefinition();
            beanDefinition.setBeanClass(MyFeatureService.class);
            beanDefinition.getPropertyValues().add("name", featureName);
            registry.registerBeanDefinition("myFeatureService", beanDefinition);
        }
    }
}
```

## Usage

### Maven Dependency

Add the following dependency to your `pom.xml`:

```xml

    io.github.microsphere-projects
    microsphere-spring-context
    ${microsphere-spring.version}

```

> **Tip:** Use the BOM (`microsphere-spring-dependencies`) for consistent version management. See the [Getting Started](https://github.com/microsphere-projects/microsphere-spring#getting-started) guide.

### Import

```java
import io.microsphere.spring.context.annotation.AnnotatedBeanCapableImportBeanDefinitionRegistrar;
```

## API Reference

### Public Methods

| Method | Description |
|--------|-------------|
| `registerBeanDefinitions` |  |
| `registerBeanDefinitions` |  |

## See Also

- `AnnotatedBeanCapableImportCandidate`
- `BeanCapableImportCandidate`
- `ImportBeanDefinitionRegistrar`

---

*This documentation was auto-generated from the source code of [microsphere-spring](https://github.com/microsphere-projects/microsphere-spring).*

Home

spring-context

spring-guice

spring-jdbc

spring-test

spring-web

spring-webflux

spring-webmvc

Clone this wiki locally