这篇文章主要介绍了静态方法中调用Spring注入过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

package io.yong.common.utils;

import javax.annotation.PostConstruct;

import io.renren.common.config.ConfigProperties;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Component;

/**

* @author: HYJ

* @create: 2019-09-25 14:16

*/

@Component

public class CalcUtil {

/**

* 需要调用的Bean

*/

@Autowired

private ConfigProperties configProperties;

private static CalcUtil calcUtil;

/**

*注释用于在完成依赖项注入以执行任何初始化之后需要执行的方法。必须在类投入使用之前调用此方法。

*/

@PostConstruct

public void initialize() {

calcUtil= this;

calcUtil.configProperties = this.configProperties;

}

public static void calcTax() {

calcUtil.configProperties.getFileupload(); //此处若是空指针异常,则需要是当前类实例化,即注册bean,例如上:@Component等

}

Java中该注解的说明:@PostConstruct该注解是javax.annotation包下的,被用来修饰一个非静态的void()方法。

被@PostConstruct修饰的方法会在服务器加载Servlet的时候运行,并且只会被服务器执行一次。PostConstruct在构造函数之后执行,init()方法之前执行。

@PostConstruct注释规则:除了拦截器这个特殊情况以外,其他情况都不允许有参数,否则spring框架会报IllegalStateException;而且返回值要是void,但实际也可以有返回值,至少不会报错,只会忽略

通常我们会是在Spring框架中使用到@PostConstruct注解 该注解的方法在整个Bean初始化中的执行顺序:

Constructor(构造方法) -> @Autowired(依赖注入) -> @PostConstruct(注释的方法)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

autowired 静态方法使用_静态方法中调用Spring注入过程解析相关推荐

  1. oracle 调用main方法,main方法中调用spring注入bean

    public static void main(String[] args) { // TODO Auto-generated method stub ApplicationContext conte ...

  2. spring初始化在ServletContextListener实现类中获取spring注入对象

    查了好多资料,发现还是不全,干脆自己整理吧,至少保证在我的做法正确的,以免误导读者,也是给自己做个记录吧! 由于项目须要,需在ServletContextListener监听接口实现类中调用sprin ...

  3. 在ServletContextListener实现类中获取spring注入对象

    由于项目需要,需在ServletContextListener监听接口实现类中调用spring注入的对象,以获取系统初始化参数.代码如下: [java] view plain copy import  ...

  4. 【thymeleaf】【SpringBoot】在HTML中调用Spring Bean

    前言 spring boot : 2.0.0.RELEASE maven eclipse thymeleaf 3.0 某些情况下需要在HTML中调用Service.比如:做CMS系统时提供的随时获取文 ...

  5. JSP页面中调用Spring Bean

    前言 spring boot 2.0.3.RELEASE spring mvc view : jsp JSP页面中调用Spring Bean 在 JSP 页面获得 WebApplicationCont ...

  6. spring aop组件_安全性中的Spring AOP –通过方面控制UI组件的创建

    spring aop组件 以下文章将显示在我参与的一个项目中,我们如何使用Spring的AOP来介绍一些与安全性相关的功能. 这样的概念是,为了使用户能够看到某些UI组件,他需要具有一定级别的安全特权 ...

  7. 170630、springboot编程之普通类中调用spring管理的bean对象

    我们知道如果我们要在一个类使用spring提供的bean对象,我们需要把这个类注入到spring容器中,交给spring容器进行管理,但是在实际当中,我们往往会碰到在一个普通的Java类中,想直接使用 ...

  8. vert.x笔记:4.vert.x中调用spring服务

    evenbus事件总线介绍: 在介绍怎么在vert.x中集成spring服务前,我们要先简单介绍一下什么是vert.x的事件总线. eventbus是vert.x的神经总线,每个vert.x实例维护了 ...

  9. qt 子类调用父类的函数_子类中调用父类的方法

    父类名 . __init__(self, ...) 可以将父类中的init中的属性重复调用,减少代码的重复 class Vehicle: def __init__(self, name, speed, ...

  10. java 读取mysql数据库_原生Java操作mysql数据库过程解析

    这篇文章主要介绍了原生Java操作mysql数据库过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.引入数据库驱动的jar包 以通过mav ...

最新文章

  1. 转载:土豆洋芋山药蛋的博客: SBSE—基于搜索的软件工程简介
  2. 从实现iPhone的OAuth封装看国内互联网和开放平台
  3. 页面上水平飞舞的图片
  4. React路上遇到的Bug
  5. mongodb系列-访问控制
  6. 在MFC单文档中,如何操作状态栏
  7. jdbc连接mysql数据库的常用对象_JDBC常用对象
  8. c语言二级考试基础知识,2018年计算机二级考试《C语言》考点:C语言基础知识...
  9. R40 gpio 寄存器地址操作【原创】
  10. Codeforces Round #383 (Div. 1): D. Arpa’s letter-marked tree…(dsu on tree+状压)
  11. 牛客网-公司真题-买帽子
  12. unity 脚本把变量放一起,在界面上显示,同时鼠标靠近时有注释出现,变量是滑动条有区间
  13. U磁盘检测和大量收集量产工具
  14. Transformer模型简介
  15. css3大绝技之animation动画
  16. Python中正确显示中文和负号
  17. 面向WiFi密码破解的渗透测试研究
  18. ROS中工作空间和功能包的创建以及发布者Publisher的实现
  19. MyBatis SSM
  20. 拱火AI大战全球最强法务部,艺术家为抵制AI画画出新招

热门文章

  1. Mac 10.12安装迅雷2.7.2
  2. as 插件GsonFormat用法(json字符串快速生成javabean)
  3. C语言 · 冒泡法排序
  4. Linux运维六:用户管理及用户权限设置
  5. 服务器性能低下时正确的处理方法
  6. 什么是REST架构 - z
  7. windows7 64位 php5.3安装php_mongo.dll方法 各个版本
  8. css中的.clearfix是什么意思?
  9. Kubernetes详解(九)——资源配置清单创建Pod实战
  10. CICD详解(十五)——Jenkins插件安装失败解决