2

RequestContextHolder.currentRequestAttributes().requestパフォーマンスへの影響はありますか? これがサービスメソッド内のリクエストにアクセスするのに適していないことはわかっていますが、本当に必要です。リクエストごとに 20 ~ 30 回呼び出すとRequestContextHolder.currentRequestAttributes().request、パフォーマンスが低下しますか?

4

1 に答える 1

1

この問題はパフォーマンスとは関係ありません。潜在的に、サービス メソッドはリクエストの外部で呼び出すことができます (たとえば、Quartz のスケジュールされたジョブで)。おそらくこの場合、RequestContextHolder.currentRequestAttributes().request は例外をスローします。私が思う最善の方法は、リクエストを必要とするサービスメソッドにパラメータとしてリクエストを渡すことです。

class MyService{

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

}

そしてコントローラーから

class MyController{

def myService

def index = { 

   myService.method(request)

}

}
于 2012-12-12T12:12:29.447 に答える