我很難決定使用哪個「Open Session In View」:使用Spring MVC的攔截器配置OpenSessionInViewInterceptor或者在web.xml的過濾器中配置OpenSessionInViewFilter?從我研究的內容來看,他們做的事情基本相同,但我試圖瞭解每種類型的差異和用法。使用哪一個:OpenSessionInViewInterceptor或OpenSessionInViewFilter?
兩者之間最大的區別在於不能在web.xml中使用過濾器的人(比如說servlet 2.2和更早的版本),他們唯一的選擇就是使用OpenSessionInViewInterceptor。不知何故,我傾向於攔截器只是因爲我必須爲我的項目創建一個自定義攔截器,所以我想在Spring MVC配置文件中將所有這些「過濾器」分組,而不是讓web.xml中的OpenSessionInViewFilter和我的自定義Spring MVC配置文件中的攔截器。確定使用哪一種方法確實是一種蹩腳的方式,我的好奇心將我殺死在這裏。
任何人都可以分享你的想法嗎?你們使用哪一個?
感謝。
謝謝。我相信使用攔截器的一個好處是容易將Spring Bean接線到它中,而在使用過濾器時我不能使用該功能。 – limc 2011-01-21 02:52:00
不要復活舊的帖子,但如果你「只在商業邏輯層面上使用Spring」,使用@Transactional`並組織你的代碼來處理它是否更有意義?我沒有爭論,只是不理解`OSIVF`在非MVC應用程序中的用處。 – Andy 2014-08-25 20:25:25