Spring入门(8)-基于Java配置而不是XML

本文内容纲要:

- Spring入门(8)-基于Java配置而不是XML

- 0. 目录

- 1. 声明一个简单Bean

- 2. 声明一个复杂Bean

Spring入门(8)-基于Java配置而不是XML

本文介绍如何应用Java配置而不是通过XML配置Spring。

0. 目录

  1. 声明一个简单Bean
  2. 声明一个复杂Bean

1. 声明一个简单Bean

还是需要简单的XML配置的,如下:

<?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-3.0.xsd

http://www.springframework.org/schema/context

http://www.springframework.org/schema/context/spring-context-3.0.xsd"

>

<context:component-scan base-package="com.chzhao.springtest"/>

</beans>

声明一个配置类

package com.chzhao.springtest;

import org.springframework.context.annotation.Bean;

import org.springframework.context.annotation.Configuration;

@Configuration

public class MyConfig {

@Bean

public App app1() {

return new App();

}

}

通过@Configuration声明配置类,通过@Bean声明Bean。其中app1就是Bean的ID。

可以通过这个app1值机获得Bean

package com.chzhao.springtest;

import org.springframework.context.ApplicationContext;

import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Main {

public static void main(String[] args) {

@SuppressWarnings("resource")

ApplicationContext act = new ClassPathXmlApplicationContext(

"applicationContext.xml");

App a = (App) act.getBean("app1");

a.showMsg();

}

}

2. 声明一个复杂Bean

如果一个Bean的定义基于另外一个Bean,也很容易实现。

首先看app定义

package com.chzhao.springtest;

public class App {

public App(IPersonBll personBll) {

this.personBll = personBll;

}

private IPersonBll personBll;

public void showMsg() {

this.personBll.show();

}

}

package com.chzhao.springtest;

import org.springframework.context.annotation.Bean;

import org.springframework.context.annotation.Configuration;

@Configuration

public class MyConfig {

@Bean

public IPersonBll bll1() {

return new PersonBll();

}

@Bean

public App app1() {

return new App(bll1());

}

}

本文内容总结:Spring入门(8)-基于Java配置而不是XML,0. 目录,1. 声明一个简单Bean,2. 声明一个复杂Bean,

原文链接:https://www.cnblogs.com/wardensky/p/4199472.html

以上是 Spring入门(8)-基于Java配置而不是XML 的全部内容, 来源链接: utcz.com/z/296474.html

回到顶部