Spring_总结_03_装配Bean(二)之Java配置

简介: 一、前言 本文承接上一节:Spring_总结_03_装配Bean(一)之自动装配 上一节提到,装配Bean有三种方式,首先推荐自动装配。当自动装配行不通时,就需要采用显示配置的方式了。 显示配置有两种方案:Java 和 XML。

一、前言

本文承接上一节:Spring_总结_03_装配Bean(一)之自动装配

上一节提到,装配Bean有三种方式,首先推荐自动装配。当自动装配行不通时,就需要采用显示配置的方式了。

显示配置有两种方案:Java 和 XML。当需要显示配置时,首选类型安全并且比XML更强大Java配置。

 

二、Java配置

实现Java配置只需两步:

(1)使用@Configuration声明一个配置类

(2)在配置类中使用@Bean声明一个Bean,同时可通过方法名注入bean。

 

三、Java配置实例

package com.ray.blog.smartblog.service;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * @author : shira
 * @date : 2018/7/27
 * @time : 21:21
 * @desc :
 **/


@Configuration  //1.声明配置类
public class CDPlayerConfig {


    @Bean   //2.1 声明一个bean,spring会将其注册为上下文中的bean。bean的名称默认为方法名
    public ComPactDisc comPactDisc(){
        return new ComPactDisc();
    }

    @Bean(name = "comPactDisc3")   //2.2 可通过name属性指定bean的名称
    public ComPactDisc comPactDisc2(){
        return new ComPactDisc();
    }


    @Bean
    public CDPlayer cdPlayer(){
       return new CDPlayer(comPactDisc());    //3.1通过引用创建bean的方法来注入bean。默认情况下,Spring中的bean都是单例的。
    }

    @Bean
    public CDPlayer cdPlayer2(ComPactDisc comPactDisc){  //3.2 通过bean的名称注入bean。在Spring容器中,只要容器中存在某个bean,就可以在另外一个bean的声明方法的参数中注入
        return new CDPlayer(comPactDisc);
    }

    
}
View Code

 

目录
相关文章
|
17天前
|
人工智能 Java API
Java也能快速搭建AI应用?一文带你玩转Spring AI可落地性
Java语言凭借其成熟的生态与解决方案,特别是通过 Spring AI 框架,正迅速成为 AI 应用开发的新选择。本文将探讨如何利用 Spring AI Alibaba 构建在线聊天 AI 应用,并实现对其性能的全面可观测性。
|
1月前
|
XML Java 测试技术
Spring IOC—基于注解配置和管理Bean 万字详解(通俗易懂)
Spring 第三节 IOC——基于注解配置和管理Bean 万字详解!
135 26
|
12天前
|
人工智能 Java API
Java 也能快速搭建 AI 应用?一文带你玩转 Spring AI 可观测性
Java 也能快速搭建 AI 应用?一文带你玩转 Spring AI 可观测性
|
2月前
|
存储 NoSQL Java
使用Java和Spring Data构建数据访问层
本文介绍了如何使用 Java 和 Spring Data 构建数据访问层的完整过程。通过创建实体类、存储库接口、服务类和控制器类,实现了对数据库的基本操作。这种方法不仅简化了数据访问层的开发,还提高了代码的可维护性和可读性。通过合理使用 Spring Data 提供的功能,可以大幅提升开发效率。
79 21
|
1月前
|
网络协议 Java Shell
java spring 项目若依框架启动失败,启动不了服务提示端口8080占用escription: Web server failed to start. Port 8080 was already in use. Action: Identify and stop the process that’s listening on port 8080 or configure this application to listen on another port-优雅草卓伊凡解决方案
java spring 项目若依框架启动失败,启动不了服务提示端口8080占用escription: Web server failed to start. Port 8080 was already in use. Action: Identify and stop the process that’s listening on port 8080 or configure this application to listen on another port-优雅草卓伊凡解决方案
73 7
|
9天前
|
存储 监控 数据可视化
SaaS云计算技术的智慧工地源码,基于Java+Spring Cloud框架开发
智慧工地源码基于微服务+Java+Spring Cloud +UniApp +MySql架构,利用传感器、监控摄像头、AI、大数据等技术,实现施工现场的实时监测、数据分析与智能决策。平台涵盖人员、车辆、视频监控、施工质量、设备、环境和能耗管理七大维度,提供可视化管理、智能化报警、移动智能办公及分布计算存储等功能,全面提升工地的安全性、效率和质量。
|
15天前
|
人工智能 Java API
Java 也能快速搭建 AI 应用?一文带你玩转 Spring AI 可观测性
Java 也能快速搭建 AI 应用?一文带你玩转 Spring AI 可观测性
|
前端开发 Java 数据库
Java面试题 - Spring
Java面试题 - Spring
152 0
|
8月前
|
Java 应用服务中间件 开发者
Java面试题:解释Spring Boot的优势及其自动配置原理
Java面试题:解释Spring Boot的优势及其自动配置原理
157 0
|
Java 容器 Spring
【java常见的面试题】什么是Spring IOC 和DI ?
Java基础的面试题【SSM框架篇】
203 0