zoukankan      html  css  js  c++  java
  • 依赖注入

    1,接口类

    package com.songyan.demo1;
    
    public interface UserDao {
    public void say();
    }
    package com.songyan.demo1;
    
    public interface UserService {
    public void say();
    }

    2,实现类

    package com.songyan.demo1;
    
    
    public class UserDaoImpl implements UserDao{
        public void say()
        {
            System.out.println("UsdeDao say helloWord");
        }
    
    }
    package com.songyan.demo1;
    
    
    public class UserServiceImpl implements UserService{
    private UserDao userDao;
    public void setUserDao(UserDao userDao)
    {
        this.userDao=userDao;
    }
    public void say()
    {
        this.userDao.say();
        System.out.println("hello");
    }
    }

    3,配置文档

    <?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.xsd">
    
    <bean id="userDao" class="com.songyan.demo1.UserDaoImpl" ></bean>
    <bean id="userService" class="com.songyan.demo1.UserServiceImpl">
    <property name="userDao" ref="userDao"></property></bean>
    </beans>

    3,测试类

    package com.songyan.demo1;
    
    import javax.xml.registry.infomodel.User;
    
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    
    public class Test {
    public static void main(String[] args) {
    	//初始化容器,加载xml
    	ApplicationContext application =new ClassPathXmlApplicationContext("applicationContext.xml");
    	//通过容器获取javabean对象实例
    	UserDao userDao=(UserDao)application.getBean("userDao");
    	//调用实例的方法
    	userDao.say();
    	//通过容器获取UserService对象
    	UserService userService=(UserService)application.getBean("userService");
    	userService.say();
    }
    }
    

      

  • 相关阅读:
    call()和apply( )
    String.prototype.replace( )
    Global对象和浏览器的window对象
    ros qt 項目增加新的线程
    ubuntu18.04 在QT中添加ros环境搭建 亲测可用
    ubuntu18.04系统下安装Nvidia驱动 + cuda10.0 + cudnn7
    【ROS学习】发布自定义数据结构的话题
    Autoware快速使用资料
    TX2-ubuntu无外接显示器远程桌面时分辨率过低
    Jetson TX2 安装 远程桌面软件 NoMachine
  • 原文地址:https://www.cnblogs.com/excellencesy/p/9100371.html
Copyright © 2011-2022 走看看