Spring Java Config

一、@Configuration

Spring JavaConfig项目已经合并到Spring Core 3.0中了。因此@Configuration已经成为Spring Core 3.0的一部分。用于通过Java Annotation代替spring applicationContext.xml的配置。

通常情况下,@Configuration是通过AnnotationConfigApplicationContext启用的,如果是Web应用,可以通过AnnotationConfigWebApplicationContext来启动。

在Servlet 3.0中,通过使用WebApplicationIntializer机制,通过继承AbstractAnnotationConfigDispatcherServletInitializer,来启动应用,该类就是使用AnnotationConfigWebApplicationContext作为WebApplicationContext。如:

	/**
	 * {@inheritDoc}
	 * <p>This implementation creates an {@link AnnotationConfigWebApplicationContext},
	 * providing it the annotated classes returned by {@link #getRootConfigClasses()}.
	 * Returns {@code null} if {@link #getRootConfigClasses()} returns {@code null}.
	 */
	@Override
	protected WebApplicationContext createRootApplicationContext() {
		Class<?>[] rootConfigClasses = this.getRootConfigClasses();
		if (!ObjectUtils.isEmpty(rootConfigClasses)) {
			AnnotationConfigWebApplicationContext rootAppContext =
					new AnnotationConfigWebApplicationContext();
			rootAppContext.register(rootConfigClasses);
			return rootAppContext;
		}
		else {
			return null;
		}
	}

你可能感兴趣的:(Spring Java Config)