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
相关推荐
for_ever_love__1 小时前
UI学习:UISearchController基础了解和应用
学习·ui·ios·objective-c
心中有国也有家1 小时前
GE图引擎深度解析——CANN的计算图优化与执行引擎
人工智能·pytorch·python·学习·numpy
来杯@Java2 小时前
图书管理系统(基于springboot+vue前后端分离的项目)计算机毕业设计java
java·spring boot·spring·vue·毕业设计·mybatis·课程设计
卷毛的技术笔记3 小时前
告别硬编码!Spring AI Alibaba 实现 AI Agent 智能工具调用(Tool Calling)
java·人工智能·后端·python·spring·ai编程
東雪木3 小时前
多线程与并发编程 专属复习笔记
java·开发语言·笔记·java面试
GHL2842710903 小时前
换脸工作流学习
学习·ai
_李小白3 小时前
【android opencv学习笔记】Day 28: 滤波算法之中值滤波器
android·opencv·学习
Oll Correct3 小时前
实验二十九:TCP的运输连接管理
网络·笔记
飞翔中文网5 小时前
Java学习笔记之抽象类与接口(设计思想)
java·笔记·学习
智者知已应修善业5 小时前
【proteus设计文氏正弦波信号发生器】2023-5-9
驱动开发·经验分享·笔记·硬件架构·proteus·硬件工程