栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

简单的IOC控制反转实现

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

简单的IOC控制反转实现

1。编写接口

package com.yyf.dao;

public interface UserDao {
    void getUser();
}

2.编写多个实现类

package com.yyf.dao;

public class UserDaoImpl implements UserDao{
    @Override
    public void getUser() {
        System.out.println ("UserDao获取数据");
    }
}
package com.yyf.dao;

public class UserDaoMysqlImpl implements UserDao{
    @Override
    public void getUser() {
        System.out.println ("Mysql获取数据");
    }
}
package com.yyf.dao;

public class UserDaoOracleImpl implements UserDao{
    @Override
    public void getUser() {
        System.out.println ("oracle获取数据");
    }
}

3.利用set方法进行动态实现值的注入,这是ioc的重点体现

package com.yyf.service;

import com.yyf.dao.UserDao;
import com.yyf.dao.UserDaoImpl;

public class UserServiceImpl implements UserService{
    private UserDao userDao;

    //利用 set进行动态实现值的注入      IOC的重点体现
    public void setUserDao(UserDao userDao) {
        this.userDao = userDao;
    }

    @Override
    public void getUser() {
         userDao.getUser ();
    }
}

4.在spring配置文件中,对UserServiceImpl实现类的userdao变量进行引用




    
    

    

        
    

5.测试   通过改变配置文件的ref 的引用,来实现不同的注入

import com.yyf.dao.UserDaoMysqlImpl;
import com.yyf.service.UserService;
import com.yyf.service.UserServiceImpl;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class MyTest {
    public static void main(String[] args) {

                ApplicationContext context = new ClassPathXmlApplicationContext ("beans.xml");
             UserServiceImpl serviceImpl = (UserServiceImpl) context.getBean ("serviceImpl");
                      serviceImpl.getUser ();
    }
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/272402.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号