spring中获取bean的方式

获取bean的方式

1.可以通过上下文的getBean方法

2.可以通过@Autowired注入

定义controller

@RestController
@RequestMapping("/api")
public class ApiUserController {

    /**
     * 上下文对象实例
     */
    @Autowired
    private  ApplicationContext applicationContext;

    @Autowired
    private IUserService userService;

    @RequestMapping("/getById")
    public RestResponse<User> getUser(Long id) {
        //使用@service注解上的别名进行获取bean
        IUserService service = (IUserService) applicationContext.getBean("IUserService");
        return service.getUserById(id);
    }

    @RequestMapping("/getByIdNoHytrix")
    public RestResponse<User> getUserNoHytrix(Long id) {
        return userService.getUserByIdNoHytrix(id);
    }

}

定义service,注解上的IUserService为自定义的名字,getBean()只能用它

@Service("IUserService")
public class UserService implements IUserService {

    @Autowired
    private UserDao userDao;

    public RestResponse<User> getUserById(Long id) {
        return userDao.getUseById(id);
    }

    public RestResponse<User> getUserByIdNoHytrix(Long id) {
        return userDao.getUseByIdNoHytrix(id);
    }
}

原文地址:https://www.cnblogs.com/peterpoker/p/9375153.html

时间: 2024-10-08 19:43:59

spring中获取bean的方式的相关文章

【Spring 系列】一、如何从spring中获取bean

导包 spring要管理的类信息 package com.liuyong666.service.impl; ? import com.liuyong666.service.PersonService; public class PersonServiceBean implements PersonService { @Override public void save(){ System.out.println("我是save()方法"); } } spring面向接口编程,该类对应的

Spring中获取Bean的几种方式

ApplicationContext 的主要实现类: 1.ClassPathXmlApplicationContext:从 类路径下加载配置文件 2.FileSystemXmlApplicationContext: 从文件系统中加载配置文件 3.ConfigurableApplicationContext 扩展于 ApplicationContext,新增加两个主要方法:refresh() 和 close(), 让 ApplicationContext 具有启动.刷新和关闭上下文的能力 4.Ap

spring中获取Bean

在测试类中我们获取已经装配给容器的Bean的方法是通过ApplicationContext,即 ApplicationContext ac=new ClassPathXmlApplicationContext("com/selrain/introduce/beans.xml"); 然后调用getBean方法获取相应的对象. 那么web应用中我们怎么获取呢,可以通过spring提供的WebApplicationContextUtils类获取 该类的getRequiredWebApplic

mvn中,使用spring中获取bean实例

由于spring官方的例子都是用maven进行代码管理, 我打算以后的代码也用maven进行管理. spring一个重要的优点就是Ioc,也就是控制反转,可以用xml文件来生成类的实例.我以前都是用eclipse下的tomcat方式来管理bean实例,用spring自带的spring tool suits管理还有点不习惯,不过生产工具都是不断优化的,所以这里也学着习惯使用. 配置文件可以放在resources文件夹下,具体目录为src\main\resources,src下的另一个文件是java

Spring讲解二:Spring中的Bean配置1---基于XML文件的方式

一.在Spring的IOC容器中配置Bean 在xml文件中通过bean节点配置bean id:Bean的名称: (1) 在IOC容器中必须是唯一的 (2) 若id没有指定,Spring自动将权限限定性类名作为bean的名字 (3) id可以指定多个名字,名字之间可以用逗号.分号.或空格分隔 二.Spring容器 在Spring IOC容器读取Bean配置创建Bean实例之前,必须对它进行初始化.只有在容器实例化后,才可以从IOC容器中获取Bean实例并使用. Spring提供了两种类型的IOC

Spring中管理Bean以及解析XML

Spring是分层的轻量级框架 以IoC(Inverse of Control 反转控制)和AOP(Aspect Oriented Programming 面向切面编程)为核心 应用Spring的好处: 方便解耦,简化开发 Spring就是一个大工厂,可以将所有对象创建和依赖关系维护,交给Spring管理 AOP编程的支持 Spring提供面向切面编程,可以方便的实现对程序进行权限拦截.运行监控等功能 声明式事务的支持 只需要通过配置就可以完成对事务的管理,而无需手动编程 方便集成各种优秀框架

spring中获取applicationContext

常用的5种获取spring 中bean的方式总结: 方法一:在初始化时保存ApplicationContext对象代码:ApplicationContext ac = new FileSystemXmlApplicationContext("applicationContext.xml");ac.getBean("beanId");说明:这种方式适用于采用Spring框架的独立应用程序,需要程序通过配置文件手工初始化Spring的情况. 方法二:通过Spring提供

Spring 中的 Bean 配置

内容提要 •IOC & DI 概述 •配置 bean –配置形式:基于 XML 文件的方式:基于注解的方式 –Bean 的配置方式:通过全类名(反射).通过工厂方法(静态工厂方法 & 实例工厂方法).FactoryBean –IOC 容器 BeanFactory & ApplicationContext 概述 –依赖注入的方式:属性注入:构造器注入 –注入属性值细节 –自动转配 –bean 之间的关系:继承:依赖 –bean 的作用域:singleton:prototype:WEB

Spring 中获取 request 的几种方法,及其线程安全性分析

概述在使用Spring MVC开发Web系统时,经常需要在处理请求时使用request对象,比如获取客户端ip地址.请求的url.header中的属性(如cookie.授权信息).body中的数据等.由于在Spring MVC中,处理请求的Controller.Service等对象都是单例的,因此获取request对象时最需要注意的问题,便是request对象是否是线程安全的:当有大量并发请求时,能否保证不同请求/线程中使用不同的request对象.这里还有一个问题需要注意:前面所说的"在处理请