??????Spring?校?XML????械?bean?????????Spring IOC??????????????????姹�??Spring?校???????XML???????????????????????????????????Spring 2.5???????????????????XML??????????XML??????????
??????姹�?写?XML???????IOC
??????????????????????锟�?
????<bean id="userDao" class="com.springapp.mvc.dao.UserDao">
????</bean>
????<bean id="userService" class="com.springapp.mvc.service.impl.UserServiceImpl">
????<property name="userDao" ref="userDao"></property>
????</bean>
????UserServiceImpl????????锟�?
????public class UserServiceImpl implements UserService {
????public UserDao getUserDao() {
????return userDao;
????}

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

????private UserDao userDao;

????public User getUserById(int id){

????return userDao.getUserById(id);
????}

????public int getUserCount(){
????return userDao.getUserCount();
????}
????}
???????????????<property name="userDao" ref="userDao"></property>???????????UserServiceImpl???械?userDao???userDao???bean????????UserServiceImpl???械???userDao???????????????com.springapp.mvc.dao.UserDao???????
????????????????
????????????????锟�?
????<bean id="userDao" class="com.springapp.mvc.dao.UserDao">
????</bean>
????<bean id="userService" class="com.springapp.mvc.service.impl.UserServiceImpl">
????</bean>
????UserServiceImpl????????锟�?
????public class UserServiceImpl implements UserService {
????@Autowired
????private UserDao userDao;

????public User getUserById(int id){
????return userDao.getUserById(id);
????}

????public int getUserCount(){
????return userDao.getUserCount();
????}
????}
????????@Autowired????????xml??<property name="userDao" ref="userDao"></property>?????????????????????@Autowired???????????byType????????????????蔚??????xml???????bean???????????????UserServiceImpl ???械?userDao?UserDao???????????????????bean?胁???????????UserDao??bean??
?????????????????????????????????????????bean????????????????????????ByName??????????蔚?????????????id??bean??????XML?????
????<bean id="userDao1" class="com.springapp.mvc.dao.UserDao">
????</bean>
????<bean id="userDao2" class="com.springapp.mvc.dao.UserDao">
????</bean>
????<bean id="userService" class="com.springapp.mvc.service.impl.UserServiceImpl">
????</bean>
?????????UserServiceImpl????????????????????????????
????@Autowired
????private UserDao userDao1;

????@Autowired
????private UserDao userDao2;
????????????????????????????????些?????????邪?????????????bean??????????械??????????????????????@Autowired??@Qualifier?????????@Qualifier??????????bean???????
????@Autowired
????@Qualifier("userDao1")
????private UserDao userDao;
???????懈??????????@Resource:
????@Resource(name = "userDao1")
????private UserDao userDao;
???????????IOC?????????慰???????锟�?写????????
?????????Spring?械??梅?????????????????????????????????Spring??????????IOC??????
????Spring IOC??????
????1.????Spring????bean????????????????bean???????
????2.Spring????????????械?context:component-scan??????????????????????械????写????????
????3.?????????????卸??????????????????@Autowired??@Resource????????校?????械?4???????
????4.???????????????????????梅????????????位??????????????bean?????
???????????????????????Spring???????????些????
????????????????????
??????????????????????@Resource??????????@MyAutowired?????????锟�?
????@Retention(RetentionPolicy.RUNTIME)
????@Target({ElementType.TYPE??ElementType.FIELD})
????@Documented
????public @interface MyAutowired {
????public String name() default "";

????public String value() default "";
????}
?????????????????
????<?xml version="1.0" encoding="UTF-8"?>
????<beans xmlns:context="http://www.springframework.org/schema/context">
????<context:component-scan id="test" class="fengzheng.Test"/>
????<bean id="tomoto" class="fengzheng.Tomoto"></bean>
????</beans>
????????bean??Spring??bean???????????????context:component-scan??Spring?????????base-package?????????????????????????渭????????????????????????????????????????class??????????????????
????????????械?tomoto bean????澹�
????package fengzheng;
????public class Tomoto {
????public void SayHello(){
????System.out.println("hello I'm tomoto");
????}
????}
?????????????fengzheng.Test???澹�???????????????
????package fengzheng;
????import fengzheng.fzAnnotation.MyAutowired;
????public class Test {
????@MyAutowired(name = "tomoto")
????private Tomoto tomoto;
????public void Say(){
????tomoto.SayHello();
????}
????}