Spring之自动装配

代码总览

代码

beans.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"
	xsi:schemaLocation="
		http://www.springframework.org/schema/beans 
		http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
       	">
	<bean id="userDao" class="com.itlwc.Test.UserDaoImpl"/>
	<!--
		autowire:表示自动装配,有byName和byType值可选,其他值不常用 
			byName:按名字匹配(按serviceImp类中的属性名匹配)
			byType:按类型匹配
	-->
	<bean id="userService" class="com.itlwc.Test.UserServiceImpl"
		autowire="byName" />
</beans>

Test.java

package com.itlwc.Test;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

//dao
interface UserDao {
	public void save();
}

// daoImp
class UserDaoImpl implements UserDao {
	public void save() {
		System.out.println("调用了UserDaoImpl");
	}
}

// service
interface UserService {
	public void add();
}

// serviceImp
class UserServiceImpl implements UserService {
	private UserDao userDao;

	public UserDao getUserDao() {
		return userDao;
	}

	public void setUserDao(UserDao userDao) {
		this.userDao = userDao;
	}

	public void add() {
		this.userDao.save();
	}
}

public class Test {
	public static void main(String[] args) {
		// 尽量使用ApplicationContext不使用BeanFactory,因为功能更强大
		ApplicationContext ac = new ClassPathXmlApplicationContext("beans.xml");
		UserService service = (UserService) ac.getBean("userService");
		// 调用增加用户方法
		service.add();
	}
}

打印结果

调用了UserDaoImpl

猜你喜欢

转载自blog.csdn.net/itlwc/article/details/39932895
今日推荐