В Grails, как я получаю доступ к быть в спящем режиме сессии в доменном статическом методе класса?

Я недавно изменил свой формат ссылки веб-сайта от:

www.mywebsite.com/index.asp?view=display&postid=100

К

www.mywebsite.com/this-is-the-title-of-the-post

и замеченный, что соотношения кликов к показам для обучения по контракту увеличенных приблизительно 300% после изменения. Это, конечно, помогает пользователю решить, релевантно ли то, что они думают о нажатии, с точки зрения целей SEO, хотя я должен сказать, что видел мало влияния после изменения

9
задан Andrew 14 December 2009 в 02:49
поделиться

2 ответа

Из статического метода вы можете извлечь компонент sessionFactory из контекста приложения:

import org.codehaus.groovy.grails.commons.ApplicationHolder as AH
...
def ctx = AH.application.mainContext
def sessionFactory = ctx.sessionFactory
def session = sessionFactory.currentSession
26
ответ дан 4 December 2019 в 05:54
поделиться

Если он находится в службе или контроллере, вам просто нужно объявить sessionFactory

def sessionFactory

для его внедрения. После этого вы можете обратиться к

sessionFactory.currentSession

, чтобы использовать его.

Ознакомьтесь с плагином hibernate-filter (файл HibernateFilterGrailsPlugin.groovy), чтобы узнать, как внедрить набор методов, использующих сеанс.

22
ответ дан 4 December 2019 в 05:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: