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
相关推荐
wdfk_prog4 分钟前
[Linux]学习笔记系列 -- [fs]libfs
linux·笔记·学习
中屹指纹浏览器14 分钟前
2025边缘计算与本地指纹生成技术:浏览器指纹安全与抗检测方案解析
经验分享·笔记
行业探路者17 分钟前
PPT生成二维码与网址跳转码及短视频二维码的应用攻略
大数据·人工智能·学习·产品运营·软件工程
大布布将军19 分钟前
⚡后端安全基石:JWT 原理与身份验证实战
前端·javascript·学习·程序人生·安全·node.js·aigc
航Hang*26 分钟前
Photoshop 图形与图像处理技术——第3章:图像的选择与填充
图像处理·笔记·ui·photoshop
im_AMBER29 分钟前
Leetcode 90 最佳观光组合
数据结构·c++·笔记·学习·算法·leetcode
QT 小鲜肉34 分钟前
【Linux命令大全】001.文件管理之paste命令(实操篇)
linux·运维·服务器·笔记·microsoft
爱睡觉的王宇昊1 小时前
PCB设计完全指南:从软件选择到基础规范(通用电路篇详解)
笔记·stm32·单片机·嵌入式硬件·学习
一个响当当的名号1 小时前
机械硬盘如何工作
学习
白帽子凯哥哥1 小时前
2026零基础如何参与护网行动?(非常详细)
数据库·sql·学习·漏洞·xss