首页 > 代码库 > 解决在XXXXService中访问session、request、params、servletcontext等等问题

解决在XXXXService中访问session、request、params、servletcontext等等问题

在最近的开发过程中,遇到了在service中访问session、request、params等对象中的一些内容,解决方法如下

import org.codehaus.groovy.grails.web.util.WebUtils
import org.springframework.web.context.request.RequestContextHolder

class WebUtilTools {
   def static getRequest(){
       def webUtils = WebUtils.retrieveGrailsWebRequest()
       webUtils.getCurrentRequest()
   }

   def static getResponse(){
       def webUtils = WebUtils.retrieveGrailsWebRequest()
       webUtils.getCurrentResponse()
   }

   def static getServletContext(){
       def webUtils = WebUtils.retrieveGrailsWebRequest()
       webUtils.getServletContext()
   }

   def static getSession(){
       RequestContextHolder.currentRequestAttributes().getSession()
   }

   def static getParams(){
       RequestContextHolder.currentRequestAttributes().params
   }
}

解决在XXXXService中访问session、request、params、servletcontext等等问题