当前位置: 首页 > news >正文

react不同环境不同配置angular_@Profile-根据不同环境注入bean

介绍

@Profile元注解是在不同的生产环境中,@Bean创建的SpringBean根据spring.profiles.active指定的环境不同创建不同环境的bean对象

一.@Profile元注解需要配合spring.profiles.active一起使用

二.首先在resources下创建三个配置文件

2e7c64e9276379a2afac12920d219949.png

application.properties:

spring.profiles.active=prod

其他两个配置文件创建了就行!

三.创建需要注入的实体类

package com.wzq.dome.entity;

import lombok.Data;

/**
 * @description:
 * @author: Wzq
 * @create: 2019-12-12 15:00
 */
@Data
public class ProFileEntity {

    private String name;

}

四.根据spring.profiles.active指定不同的环境选择注入的bean

DomeApplication:代码如下

package com.wzq;

import com.wzq.dome.entity.ProFileEntity;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Profile;

@SpringBootApplication
public class DomeApplication {

    public static void main(String[] args) {
        SpringApplication.run(DomeApplication.class, args);
    }


    @Bean(name = "proFileEntity")
    @Profile("prod")
    public ProFileEntity proFileEntity1(){
        ProFileEntity proFileEntity = new ProFileEntity();
        proFileEntity.setName("GoslingWu");
        return proFileEntity;
    }


    @Bean(name = "proFileEntity")
    @Profile("dev")
    public ProFileEntity proFileEntity(){
        ProFileEntity proFileEntity = new ProFileEntity();
        proFileEntity.setName("wzq");
        return proFileEntity;
    }


}

五.使用

package com.wzq.dome.action;

import com.wzq.dome.entity.ProFileEntity;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * @description:
 * @author: Wzq
 * @create: 2019-12-12 10:27
 */
@RestController
public class TestController {



    @Autowired
    ProFileEntity proFileEntity;

    @RequestMapping("/test")
    public String test(){
        return proFileEntity.getName();
    }

}

六.成功

299d75b4b4434cf32656a883cb7cd077.png

这是我的公众号 有最新的it咨询,和个人工作的记录:架构师与哈苏

相关文章:

  • Userenv 1030
  • TechEd 2005游记(二)
  • uniapp获取屏幕宽度的方式_骚年你的屏幕适配方式该升级了-smallestWidth限定符适配方案...
  • 微软Google上演研发战 急调张亚勤对阵李开复[zz]
  • id vue 取对象_在线等,挺急的!vue如何查找id对应的对象,求指导!
  • 支持事务的版本_厉害了,Spring Cloud Alibaba 发布 GA 版本!
  • 李开复发公开信回应大学生质疑 称言行一致
  • vue如何主动销毁子组件_Vue自动销毁的vue event Bus
  • MT summit X 感想之感想
  • 免费电子书籍下载站点大全
  • visio常用快捷键_visio2003常用快捷键有哪些
  • 英语学习资源下载大全 一网打尽
  • laravel auth login 重定向自定义_php-laravel框架用户验证(Auth)模块解析(二)注册模块...
  • 在线翻译总集
  • 偷的名表卖掉能查到吗_回收黄金的利润怎么样?黄金回收的行业未来趋势怎么样?小白做黄金回收的门槛高吗?...
  • SegmentFault for Android 3.0 发布
  • [译]前端离线指南(上)
  • 3.7、@ResponseBody 和 @RestController
  • Angular4 模板式表单用法以及验证
  • Elasticsearch 参考指南(升级前重新索引)
  • js操作时间(持续更新)
  • laravel5.5 视图共享数据
  • maya建模与骨骼动画快速实现人工鱼
  • Mysql优化
  • React-flux杂记
  • scrapy学习之路4(itemloder的使用)
  • Vue 2.3、2.4 知识点小结
  • vue-loader 源码解析系列之 selector
  • win10下安装mysql5.7
  • 前端每日实战:70# 视频演示如何用纯 CSS 创作一只徘徊的果冻怪兽
  • 如何实现 font-size 的响应式
  • 曜石科技宣布获得千万级天使轮投资,全方面布局电竞产业链 ...
  • ​LeetCode解法汇总1410. HTML 实体解析器
  • ​LeetCode解法汇总518. 零钱兑换 II
  • ​力扣解法汇总1802. 有界数组中指定下标处的最大值
  • (04)odoo视图操作
  • (AngularJS)Angular 控制器之间通信初探
  • (C)一些题4
  • (Mac上)使用Python进行matplotlib 画图时,中文显示不出来
  • (附源码)ssm本科教学合格评估管理系统 毕业设计 180916
  • (附源码)ssm高校运动会管理系统 毕业设计 020419
  • (紀錄)[ASP.NET MVC][jQuery]-2 純手工打造屬於自己的 jQuery GridView (含完整程式碼下載)...
  • (简单有案例)前端实现主题切换、动态换肤的两种简单方式
  • (六)激光线扫描-三维重建
  • (六)什么是Vite——热更新时vite、webpack做了什么
  • (太强大了) - Linux 性能监控、测试、优化工具
  • (转)linux下的时间函数使用
  • (转)关于pipe()的详细解析
  • ******IT公司面试题汇总+优秀技术博客汇总
  • .NET 3.0 Framework已经被添加到WindowUpdate
  • .net 4.0 A potentially dangerous Request.Form value was detected from the client 的解决方案
  • .net core 6 使用注解自动注入实例,无需构造注入 autowrite4net
  • .net core 源码_ASP.NET Core之Identity源码学习
  • .Net FrameWork总结
  • .NET NPOI导出Excel详解