spring学习笔记七

一、自动装配

1.1、BookDao接口和实现类

java 复制代码
public interface BookDao {
    void save();
}
public class BookDaoImpl implements BookDao {
    public void save(){
        System.out.println("book dao save......");
    }
}

1.2、BookService接口和实现类

java 复制代码
public interface BookService {
    void save();
}
public class BookServiceImpl implements BookService {
    private BookDao bookDao;
    public void setBookDao(BookDao bookDao) {
        this.bookDao = bookDao;
    }
    public void save(){
        bookDao.save();
    }
}

1.3、配置文件

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.xsd">
    <bean id="bookDao" class="com.itheima.dao.impl.BookDaoImpl" ></bean>
    <bean id="bookService" name="service" class="com.itheima.service.impl.BookServiceImpl" autowire="byType"></bean>
</beans>

1.4、使用方法

java 复制代码
public static void main(String[] args) {
        ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
        BookService bookService = (BookService) ctx.getBean("service");
        bookService.save();
    }

1.5、总结

  • 在配置文件中添加autowire属性为byType
  • spring会按照BookDao类型找到对应的Bean实现注入
相关推荐
QT 小鲜肉2 小时前
【C++基础与提高】第二章:C++数据类型系统——构建程序的基础砖石
开发语言·c++·笔记
songyuc5 小时前
【S2ANet】Align Deep Features for Oriented Object Detection 译读笔记
人工智能·笔记·目标检测
蒙奇D索大7 小时前
【算法】递归算法的深度实践:从布尔运算到二叉树剪枝的DFS之旅
笔记·学习·算法·leetcode·深度优先·剪枝
卡提西亚8 小时前
C++笔记-25-函数模板
c++·笔记·算法
sg_knight8 小时前
Docker 实战:如何限制容器的内存使用大小
java·spring boot·spring·spring cloud·docker·容器·eureka
烤麻辣烫12 小时前
黑马程序员苍穹外卖(新手)Day1
java·数据库·spring boot·学习·mybatis
郭庆汝12 小时前
(二)自然语言处理笔记——Seq2Seq架构、注意力机制
人工智能·笔记·自然语言处理
提娜米苏12 小时前
Bash Shell脚本学习——唇读数据集验证脚本
开发语言·学习·bash
WZTTMoon13 小时前
Spring 配置解析与 @Value 注入核心流程详解
java·spring boot·spring
wxin_VXbishe13 小时前
springboot在线课堂教学辅助系统-计算机毕业设计源码07741
java·c++·spring boot·python·spring·django·php