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实现注入
相关推荐
低代码布道师1 小时前
微搭低代码MBA 培训管理系统实战 30——学习卡
学习·低代码·rxjava
南無忘码至尊1 小时前
Unity学习90天 - 第 6天 - 学习协程 Coroutine并实现每隔 2 秒生成一波敌人
学习·unity·c#·游戏引擎
LN花开富贵2 小时前
【ROS】鱼香ROS2学习笔记二
linux·笔记·python·学习·嵌入式
檬柠wan2 小时前
MySQL-数据库增删改查学习
数据库·学习·mysql
ouliten2 小时前
C++笔记:std::invoke
c++·笔记
minglie12 小时前
Zynq 开发中的工程文件管理
学习
朝新_3 小时前
【Spring AI 】核心知识体系梳理:从入门到实战
java·人工智能·spring
炽烈小老头4 小时前
【每天学习一点算法 2026/04/16】逆波兰表达式求值
学习·算法
谁怕平生太急4 小时前
面试题记录:在线数据迁移
java·数据库·spring
千寻girling4 小时前
机器学习 | 线性回归 | 尚硅谷学习
学习·机器学习·线性回归