在Spring MVC中使用工具类调用Service层时,Service类为null如何解决

标签: spring service @Autowired
1人阅读 评论(0) 收藏 举报
分类:

因为平时在调用service层时都是在controller中,有配置扫描注入,spring会根据配置自动注入所依赖的服务层。

但因我们写的工具类不属于controller层,所以当所写接口需要调用服务层是,常常会为NULL。

下面就分享一个实践后可行的办法,如下图所示:
第一种:
@Component //申明为spring组件
public class TestUtils {
@Autowired
private TestService testService; //添加所需service的私有成员
private static TestUtils testUtils ; // 关键点1 静态初使化 一个工具类 这样是为了在spring初使化之前

public void setTestService(TestService  testService) {  
    this.testService = testService;  
}  

@PostConstruct     //关键二   通过@PostConstruct 和 @PreDestroy 方法 实现初始化和销毁bean之前进行的操作
public void init() {  
    testUtils = this;  
    testUtils.testService = this.testService;   // 初使化时将已静态化的testService实例化
}  

}

这样下面的代码中就可以通过 testUtils.testService 来调用service处理
第二种:
这里写图片描述
主要是:1.将此工具类加上@Component注解

2.将所需调用的服务类设置成静态属性,并通过方法直接将服务层设置成工具类自己的属性即可。

查看评论

springmvc架构工具类引用service为null的解决办法

1.由于LogInfoUtil类没有受注入扫描,就算给 dictService加注解,也不能解决;2.由于dao层是接口,不能new,所以不能实例化点调; 实例代码如下: package ...
  • mao_mu_mu
  • mao_mu_mu
  • 2017-03-29 16:55:25
  • 1431

Spring MVC普通类或工具类中调用service报空null的解决办法(调用service报java.lang.NullPointerException)

    有时候我需要将controller继承一个父类,父类中写重用操作。@Controller @RequestMapping(value = "webmana", produc...
  • lianzhang861
  • lianzhang861
  • 2018-03-23 22:13:19
  • 68

(亲测有效。)Spring MVC中,Controller中使用service只需使用注解,但是普通类获取 service或 dao 都是null空的。

(亲测有效。)Spring MVC中,Controller中使用service只需使用注解,但是普通类获取 service或 dao 都是null空的。...
  • u012726702
  • u012726702
  • 2017-09-29 17:16:14
  • 846

如何在普通类中直接访问service层或dao层

1、最近遇到一个问题,如何在工具类中去访问dao层与service层的方法,因为可能本人底子比较薄弱,一开始未想到错误点在哪,后来debug才发现我的service或 dao 都是空的。    ...
  • HL_smile90
  • HL_smile90
  • 2017-08-02 09:07:55
  • 2817

Spring mvc 普通类调用Service

spring 中普通类去调用service,而不是通过controller去调用,这样如果不作特殊处理是不好用的,调用的时候会发现service是null。 下面是解决方案 service类写法(...
  • CSDN_WANGQI
  • CSDN_WANGQI
  • 2018-02-02 13:24:10
  • 144

Spring注入service为null另类解决办法 工具类 一般类 静态 非controller

本文转载自:http://www.cnblogs.com/allforone/p/4108862.html  系统为SpringMVC框架,在开发的过程中有一些工具类需要调用下由spring...
  • zhouzhiwengang
  • zhouzhiwengang
  • 2016-10-24 15:22:50
  • 3796

spring 工具类注入Service方法

spring 工具类注入Service方法 转载2016-08-26 13:51:41 标签:it 系统为SpringMVC框架,在开发的过程中有一些工具类需要调用下由s...
  • dong281055686xin
  • dong281055686xin
  • 2017-04-05 16:03:42
  • 1492

springMVC中普通类调用注解service方法

在springMVC中的普通类中调用注册service的方法
  • u011385445
  • u011385445
  • 2015-10-21 15:45:35
  • 9169

静态工具类中使用注解注入service

一般需要在一个工具类中使用@Autowired 注解注入一个service。但是由于工具类方法一般都写成static,所以直接注入就存在问题。 使用如下方式可以解决: /** * */ pa...
  • p793049488
  • p793049488
  • 2014-07-15 16:43:18
  • 28845

Spring框架中普通的类如何调用注解Service中的方法

如何使用Spring框架,在一个普通类中调用使用Spring注解配置的Service的方法。 1.首先我们知道使用Spring框架,我们不需要创建类的对象(除VO对象,工具类等之外),都由Sprin...
  • Smile___you
  • Smile___you
  • 2015-12-04 14:14:27
  • 3961
    个人资料
    持之以恒
    等级:
    访问量: 1万+
    积分: 462
    排名: 10万+
    最新评论