ssm框架-依赖注入以及了解静态工厂方式实例化

实现在配置文件中赋值的功能,代替在类中编码
创建service包,创建UserService

package com.baidu.spring.service;

public interface UserService {

    public void say();
}

创建UserServiceImpl类

package com.baidu.spring.service;

import com.baidu.spring.dao.UserDao;


public class UserServiceImpl implements UserService {
    //区别:没有赋值  userDao=userDaoImpl=new UserDaoImpl();
    private UserDao userDao;

    //setter方法:通过该方法进行注入,一定要记得写
    public  void setUserDao(UserDao userDao){
        this.userDao=userDao;
    }


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

配置spring的配置文件

测试类的编写

 @Test
    public void test2(){
        //测试:依赖注入技术
        // 创建applicationContext
        ApplicationContext applicationContext=
                new ClassPathXmlApplicationContext("applicationContext.xml");

        //创建UserService实例
        UserService userService =(UserService) applicationContext.getBean("userService");

        //调用方法
        userService.say();

    }

Bean的实例化

构造器实例化
1 编写类

package com.baidu.beans;


public class Bean1 {

    
}

2 配置bean

 <!--bean1-->
    <bean id="bean1" class="com.baidu.beans.Bean1"/>

3 测试

package com.baidu.beans;

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


public class MyTest {

    @Test
    public void test1(){

        //控制反转技术,创建对象(bean的实例化)
        //1
        ApplicationContext applicationContext=
                new ClassPathXmlApplicationContext("applicationContext.xml");

        //2
        Bean1 bean1=(Bean1) applicationContext.getBean("bean1");

        //3
        System.out.println("输出:"+bean1);
    }

}

静态工厂方式实例化

1-创建bean2类
2-创建Bean2Factory类
3-配置文件

<!--  <bean id="bean2" class="com.baidu.beans.Bean2"/>-->
    <!--bean2Factory-->

    <bean id="bean2" class="com.baidu.beans.Bean2Factory" factory-method="createBean2"/>

4-测试

展开阅读全文

Windows版YOLOv4目标检测实战:训练自己的数据集

04-26
©️2020 CSDN 皮肤主题: 游动-白 设计师: 上身试试 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值