Spring 在生产环境中使用RequestContextHolder.currentRequestAttributes()请求可以吗?

Spring 在生产环境中使用RequestContextHolder.currentRequestAttributes()请求可以吗?,spring,grails,request,Spring,Grails,Request,RequestContextHolder.currentRequestAttributes().request是否对性能有影响?我知道在服务方法中访问请求并不好,但我确实需要它。因此,如果我每次调用RequestContextHolder.currentRequestAttributes().request20-30次,是否会降低性能?问题与性能无关。i至少可以在请求之外调用服务方法(例如在quartz计划作业中)。在这种情况下,RequestContextHolder.currentReque

RequestContextHolder.currentRequestAttributes().request
是否对性能有影响?我知道在服务方法中访问请求并不好,但我确实需要它。因此,如果我每次调用
RequestContextHolder.currentRequestAttributes().request
20-30次,是否会降低性能?

问题与性能无关。i至少可以在请求之外调用服务方法(例如在quartz计划作业中)。在这种情况下,RequestContextHolder.currentRequestAttributes()可能会引发异常。我认为最好的方法是将请求作为参数传递给需要它的服务方法

class MyService{

def method(def request){
    //do what you want with the request
}

}
从一个控制器

class MyController{

def myService

def index = { 

   myService.method(request)

}

}