之前spring是用xml配置,现在可以零xml使用,完全代码的方式来使用的spring的功能。实际上,注解并不重要,xml配置也不重要,重要的是使用spring的ioc和aop提供的功能。现在提供了注解的方式来使用spring的核心功能,那简直不要太舒服了。

    1.先建项目导入spring相关依赖

<dependency>
	<groupId>ch.qos.logback</groupId>
	<artifactId>logback-classic</artifactId>
	<version>1.2.3</version>
</dependency>
<dependency>
	<groupId>ch.qos.logback</groupId>
	<artifactId>logback-core</artifactId>
	<version>1.2.3</version>
</dependency>
<dependency>
	<groupId>org.springframework</groupId>
	<artifactId>spring-context</artifactId>
	<version>4.3.12.RELEASE</version>
</dependency>

     2.创建相应的包

spring4.x注解开发
 conf是spring的配置类,其他的就是dao和service。

    3.相关代码

    conf包下

package com.kibear.spring.conf;

import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;

@Configuration
@ComponentScan("com.kibear.spring")
public class BeanConf {

}

 dao包下

package com.kibear.spring.dao;

import org.springframework.stereotype.Repository;

@Repository
public class HelloDao {

	public String say(String name) {
		return "hello " + name;
	}

}

 service包下

package com.kibear.spring.service;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.kibear.spring.dao.HelloDao;

@Service
public class HelloService {

	@Autowired
	private HelloDao helloDao;


	public HelloService() {
		System.out.println("HelloService()");
	}

	public String sayHello(String name) {
		return helloDao.say(name);
	}


}

 启动类

package com.kibear.spring;

import java.util.Arrays;

import org.springframework.context.annotation.AnnotationConfigApplicationContext;

import com.kibear.spring.conf.BeanConf;
import com.kibear.spring.service.HelloService;

public class App {

	public static void main(String[] args) {

		AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(BeanConf.class);
		
		System.out.println(Arrays.asList(context.getBeanDefinitionNames()));
		
		System.out.println(context.getBean("helloService"));
		
		HelloService helloService = context.getBean(HelloService.class);
		System.out.println(helloService.sayHello("kibear"));
		context.close();
	}

}

 

 

相关文章: