Пример JavaConfig Spring 3

Spring 3 пример JavaConfig

Поскольку Spring 3, функцииJavaConfig включены в основной модуль Spring, это позволяет разработчику перемещать определение bean-компонента и конфигурацию Spring из файла XML в класс Java.

Но вы по-прежнему можете использовать классический способ XML для определения bean-компонентов и конфигурации,JavaConfig - просто еще одно альтернативное решение.

См. Различие между классическим определением XML и JavaConfig для определения компонента в контейнере Spring.

XML-файл Spring:



    

Эквивалентная конфигурация в JavaConfig:

package com.example.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import com.example.hello.HelloWorld;
import com.example.hello.impl.HelloWorldImpl;

@Configuration
public class AppConfig {

    @Bean(name="helloBean")
    public HelloWorld helloWorld() {
        return new HelloWorldImpl();
    }

}

Spring JavaConfig Hello World

Теперь посмотрите полный пример Spring JavaConfig.

1. Структура каталогов

Смотрите структуру каталогов этого примера.

directory structure of this example

2. Библиотека зависимостей

Чтобы использовать JavaConfig (@Configuration), вам необходимо включить библиотекуCGLIB. Смотрите зависимости:

    
    
        org.springframework
        spring-core
        ${spring.version}
    

    
        org.springframework
        spring-context
        ${spring.version}
    

    
    
        cglib
        cglib
        2.2.2
    

3. Фасоль

Простой боб.

package com.example.hello;

public interface HelloWorld {

    void printHelloWorld(String msg);

}
package com.example.hello.impl;

import com.example.hello.HelloWorld;

public class HelloWorldImpl implements HelloWorld {

    @Override
    public void printHelloWorld(String msg) {

        System.out.println("Hello : " + msg);
    }

}

4. JavaConfig Аннотация

Добавьте аннотацию@Configuration, чтобы сообщить Spring, что это основной файл конфигурации Spring, и определите bean через@Bean.

package com.example.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import com.example.hello.HelloWorld;
import com.example.hello.impl.HelloWorldImpl;

@Configuration
public class AppConfig {

    @Bean(name="helloBean")
    public HelloWorld helloWorld() {
        return new HelloWorldImpl();
    }

}

5. Запустить его

Загрузите свой класс JavaConfig с помощьюAnnotationConfigApplicationContext.

package com.example.core;

import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import com.example.config.AppConfig;
import com.example.hello.HelloWorld;

public class App {
    public static void main(String[] args) {

            ApplicationContext context = new AnnotationConfigApplicationContext(AppConfig.class);
        HelloWorld obj = (HelloWorld) context.getBean("helloBean");

        obj.printHelloWorld("Spring3 Java Config");

    }
}

Выход

Hello : Spring3 Java Config

Скачать исходный код

Скачать -Spring3-JavaConfig-Example.zip (6 КБ)