jsp文件是session創建的一個源頭,這裏指的不是在jsp文件中用代碼或者標籤來操作session,這些都是在控制中的。
容易忽視或者說根本就不會意識到的是,jsp有自動創建session的機制,在jsp頁面中,如果沒有明確的給出 <%@ page session="false"%>,
jsp頁面會自動在生成的java文件中增加一句: javax.servlet.http.HttpSession session = request.getSession(true)。
可以做一個實驗看下,index.jsp不添加<%@ page session="false"%>, 訪問的時候,有響應cookie,JSESSIONID:"XXXXXX" path:"/yourwebapp"
如果加了<%@ page session="false"%>,則沒有任何響應cookie。
總之,只有調用request.getSession()/request.getSession(true)纔會生成session。