package com.example.demo.config;

import com.example.demo.entiy.User;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; /*
Configuration注解修饰类,作用如下
1.被修饰的类注入ioc容器。
2.被spring boot识别为配置类。可以继承WebMvcConfigurer修改spring boot配置
*/
@Configuration(proxyBeanMethods = true)
// proxyBeanMethods 属性默认为true
// 为true则开启代理,将代理对象存储进ioc容器。其内部被@Bean注解修饰的方法既是共有方法,被提取被代理。
public class BeanConfig { @Bean
// 被@Bean修饰的方法,返回值存入ioc容器,名称为方法名,类型是方法类型
// @Bean("user01") 通过传入参数修改名称
public User user() {
return new User("张三",18);
}
}

测试

package com.example.demo;

import com.example.demo.entiy.User;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ConfigurableApplicationContext; @SpringBootApplication
public class Demo9Application { public static void main(String[] args) {
ConfigurableApplicationContext context = SpringApplication.run(Demo9Application.class, args);
// 通过上下文对象获取Bean
User user01 = context.getBean("user", User.class);
User user02 = context.getBean("user", User.class);
System.out.println(user01);
System.out.println(user02);
System.out.println(user01 == user01);
} }

结果

User{name='张三', age=18}
User{name='张三', age=18}
true

spring boot 配置Bean的更多相关文章

  1. Spring Boot 配置优先级顺序

    一般在一个项目中,总是会有好多个环境.比如: 开发环境 -> 测试环境 -> 预发布环境 -> 生产环境 每个环境上的配置文件总是不一样的,甚至开发环境中每个开发者的环境可能也会有一 ...

  2. Spring boot配置多个Redis数据源操作实例

    原文:https://www.jianshu.com/p/c79b65b253fa Spring boot配置多个Redis数据源操作实例 在SpringBoot是项目中整合了两个Redis的操作实例 ...

  3. spring boot配置mybatis和事务管理

    spring boot配置mybatis和事务管理 一.spring boot与mybatis的配置 1.首先,spring boot 配置mybatis需要的全部依赖如下: <!-- Spri ...

  4. [转] Spring Boot配置多个DataSource

    [From]  https://www.liaoxuefeng.com/article/001484212576147b1f07dc0ab9147a1a97662a0bd270c20000 Sprin ...

  5. Spring Boot 配置元数据指南

    1. 概览 在编写 Spring Boot 应用程序时,将配置属性映射到 Java bean 上是非常有用的.但是,记录这些属性的最好方法是什么呢? 在本教程中,我们将探讨 Spring Boot C ...

  6. Spring Boot配置过滤器的两种方式

    过滤器(Filter)是Servlet中常用的技术,可以实现用户在访问某个目标资源之前,对访问的请求和响应进行拦截,常用的场景有登录校验.权限控制.敏感词过滤等,下面介绍下Spring Boot配置过 ...

  7. Spring Boot配置多数据源并实现Druid自动切换

    原文:https://blog.csdn.net/acquaintanceship/article/details/75350653 Spring Boot配置多数据源配置yml文件主数据源配置从数据 ...

  8. spring boot配置druid连接池连接mysql

    Spring Boot 集成教程 Spring Boot 介绍 Spring Boot 开发环境搭建(Eclipse) Spring Boot Hello World (restful接口)例子 sp ...

  9. Redis篇之操作、lettuce客户端、Spring集成以及Spring Boot配置

    Redis篇之操作.lettuce客户端.Spring集成以及Spring Boot配置 目录 一.Redis简介 1.1 数据结构的操作 1.2 重要概念分析 二.Redis客户端 2.1 简介 2 ...

  10. Spring Boot配置,读取配置文件

    Spring Boot配置,读取配置文件 一.配置Spring Boot 1.1 服务器配置 1.2 使用其他Web服务器 1.3 配置启动信息 1.4 配置浏览器显示ico 1.5 Yaml语法 1 ...

随机推荐

  1. Blazor组件自做十三: 使用 Video.js 在 Blazor 中播放视频

    Video.js 是一个具有大量功能的流行的视频和音频 JavaScript 库,今天我们试试集成到 Blazor . Blazor VideoPlayer 视频播放器 组件 示例 https://b ...

  2. Python + logging 控制台有日志输出,但日志文件中数据为空

    源码: def output(self, level, message): fh = logging.FileHandler(self.logpath, mode='a', encoding='utf ...

  3. 4、PageHelper分页查询

    1.MyBatis的分页方式: 逻辑分页与物理分页 1.逻辑分页:使用MyBatis自带的RowBounds进行分页,是一次性查询很多数据,然后再在结果中检索分页的数据.这样做弊端是需要消耗大量的内存 ...

  4. 【转载】EXCEL VBA 20个有用的ExcelVBA代码

    1.显示多个隐藏的工作表 如果你的工作簿里面有多个隐藏的工作表,你需要花很多时间一个一个的显示隐藏的工作表. 下面的代码,可以让你一次显示所有的工作表 Sub UnhideAllWoksheets() ...

  5. WPF 自定义附加事件

    我们都知道路由事件,而附加事件用的比较少. 但如果是通用的场景,类似附加属性,附加事件就很有必要的. 举个例子,输入设备有很多种,WPF中输入事件主要分为鼠标.触摸.触笔:WPF 屏幕点击的设备类型 ...

  6. 使用Git提交代码

    目录 1.提交前准备工作 2.代码提交步骤 3.从git上面拉代码 4.Git变更集 5.参考资料 1.提交前准备工作 首先去git官网下载git工具(Git GUI Here.Git Bash He ...

  7. [OpenCV实战]30 使用OpenCV实现图像孔洞填充

    在本教程中,我们将学习如何填充二值图像中的孔.考虑下图左侧的图像.假设我们想要找到一个二值掩模,它将硬币与背景分开,如下图右侧图像所示.在本教程中,包含硬币的圆形区域也将被称为前景. 请注意,硬币的边 ...

  8. (5)go-micro微服务domain层开发

    目录 一 domain层介绍说明 二 model层开发 三 repository层开发 四 service层开发 五 最后 一 domain层介绍说明 domain层专注于数据库数据领域开发,我们把数 ...

  9. B. Quick Sort【Codeforces Round #842 (Div. 2)】

    B. Quick Sort You are given a permutation[排列]† \(p\) of length \(n\) and a positive integer \(k≤n\). ...

  10. 通过Terraform创建GCP Pubsub

    1 简介 Terraform是管理许多平台的基础设施的工具,如AWS.GCP和Azure.这篇文章将讲解如何通过Terraform来管理GCP Pub/Sub. 创建GCP项目请参考:初始化一个GCP ...