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
相关推荐
Flittly9 小时前
【AgentScope Java新手村系列】(11)中断与恢复
java·spring boot·spring
dunky16 小时前
Spring 的三级缓存与循环依赖
后端·spring
LinXunFeng1 天前
Obsidian - 使用 Share Note 分享笔记并自部署
前端·笔记·github
通信小呆呆5 天前
当算法有了“五感”:多模态数据融合如何向人体感官协同学习?
人工智能·学习·算法·机器学习·机器人
码云数智-园园5 天前
C++20 Modules 模块详解
java·开发语言·spring
H__Rick5 天前
自动对焦学习-3
人工智能·学习·计算机视觉
Daisy Lee5 天前
量化学习-第1章-什么是量化金融
学习·金融·datawhale
咖啡八杯5 天前
GoF设计模式——享元模式
java·spring·设计模式·享元模式
Flittly5 天前
【AgentScope Java新手村系列】(10)实战-多Agent天气助手
java·spring boot·spring
Alsn865 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker