spring学习笔记五

一、Bean设置基础类型

1.1、BookDao接口和实现类

java 复制代码
public interface BookDao {
    void save();
}

public class BookDaoImpl implements BookDao {

    private int connectionNum;
    private String databaseName;

    public void setConnectionNum(int connectionNum) {
        this.connectionNum = connectionNum;
    }

    public void setDatabaseName(String databaseName) {
        this.databaseName = databaseName;
    }



    public void save(){
        System.out.println("book dao save......" + databaseName+","+ connectionNum);
    }
}

1.2、配置文件

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" scope="prototype">
<!--        基本类型-->
        <property name="databaseName" value="mysql"/>
        <property name="connectionNum" value="10"/>
    </bean>
</beans>

1.3、总结

  • bean中基本数据类型是设置property中value属性

二、 Bean设置引用类型

2.1、BookService接口和实现类

java 复制代码
public interface BookService {
    void save();
}
public class BookServiceImpl implements BookService, InitializingBean, DisposableBean {
    private BookDao bookDao;
    private UserDao userDao;

    public void setUserDao(UserDao userDao) {
        this.userDao = userDao;
    }



    public void save(){
//        System.out.println("book service save..");
        bookDao.save();
        userDao.save();
    }

    // 提供对应的set方法
    public void setBookDao(BookDao bookDao) {
        this.bookDao = bookDao;
    }

    public void destroy() throws Exception {
        System.out.println("service destroy");
    }

    public void afterPropertiesSet() throws Exception {
        System.out.println("service init");
    }
}

2.2、配置文件

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" scope="prototype">
        <!-- 基本类型使用value-->
        <property name="databaseName" value="mysql"/>
        <property name="connectionNum" value="10"/>
    </bean>
    <bean id="userDao" class="com.itheima.dao.impl.UserDaoImpl" scope="singleton"/>
    <bean id="bookService" name="service" class="com.itheima.service.impl.BookServiceImpl">
        <!-- 引用类型使用ref -->
        <property name="bookDao" ref="bookDao"></property>
        <property name="userDao" ref="userDao" />
    </bean>
</beans>

2.3、总结

  • 基本数据类型使用的是value
  • 引用类型使用的是ref
相关推荐
qq_185198697 小时前
(Spring Bean + delegateExpression)实现http服务 的完整可运行项目
spring
一只小菜鸡..7 小时前
南京大学 操作系统 (JYY) 学习笔记:进程、系统调用与状态机管理
笔记·学习
DeviceHub7 小时前
硬件工程师选型笔记:ALPS RK12L1230C0K 与 Tonevee RK12L1230C0K 电位器 PIN TO PIN 评估指南
笔记
whyTeaFo8 小时前
GAMES101: Lecture 13: Ray Tracing 1 (Whitted-Style Ray Tracing) ppt笔记
笔记
Ai拆代码的曹操8 小时前
Spring 事务 REQUIRES_NEW 嵌套调用:连接池翻倍的秘密
java·后端·spring
天国梦10 小时前
2026英语教学系统选型实战:AI如何让备课效率提升42%?天学网技术落地全解析
人工智能·学习
维克兜率天11 小时前
【维克】大数定律与中心极限定理:为什么长期均值终将回归?
经验分享·学习·金融·概率论
中微极客11 小时前
降维算法75倍加速:从PCA到稀疏字典学习的工程实践
人工智能·学习·算法
吃好睡好便好13 小时前
MATLAB中图像的读取、写入和显示
开发语言·图像处理·学习·计算机视觉·matlab
~kiss~13 小时前
大模型中的强化学习算法和对齐算法的区别
学习