1.jsp 和 servlet 有什麼區別?spring
JSP本質上是Servlet的一種簡易形式,JSP會被服務器處理成一個相似於Servlet的Java程序,能夠簡化頁面內容的生成。Servlet和JSP最主要的不一樣點在於,Servlet的應用邏輯是在Java文件中,而且徹底從表示層中的HTML分離開來。而JSP的狀況是Java和HTML能夠組合成一個擴展名爲.jsp的文件。JSP側重於視圖,Servlet更側重於控制邏輯,在MVC架構模式中,JSP適合充當視圖(view)而Servlet適合充當控制器(controller)。sql
2.jsp 有哪些內置對象?做用分別是什麼?數據庫
JSP有9個內置對象:瀏覽器
3.說一下 jsp 的 4 種做用域?安全
4.session 和 cookie 有什麼區別?服務器
cookie數據存放在瀏覽器即客戶端,session存在在服務器上cookie
cookie是不安全的,session是安全的session
同一個用戶在訪問一個網站期間,全部的session在任何一個地方均可以訪問到;若是設置了訪問路徑,在同一個網站中不一樣路徑下的cookie互相是訪問不到的.cookie只能是子路徑訪問父路徑設置的cookie架構
5.說一下 session 的工做原理?mvc
Session內容保存在服務器端的,一般是保存在內存中,固然也能夠保存在文件、數據庫等等。客戶端跟服務器端經過SessionId來關聯, SessionId一般以Cookie的形式存儲在客戶端。每次HTTP請求,SessionId都會隨着Cookie被傳遞到服務器端,這樣就能夠經過SessionId取到對應的信息,來判斷這個請求來自於哪一個客戶端/用戶。
6.若是客戶端禁止 cookie 能實現 session 還能用嗎?
不必定,一般狀況下,SessionId均由Cookie負責保存,可是客戶端跟服務器端經過HTTP交互,除了Cookie能夠攜帶信息以外,URL也能夠。不過對用戶不友好,因此基本上沒有互聯網項目會採用這種方案。
7.spring mvc 和 struts 的區別是什麼?
1、攔截機制不一樣
Struts2是類級別的攔截,每次請求就會建立一個Action,和Spring整合時Struts2的ActionBean注入做用域是原型模式prototype,而後經過setter,getter吧request數據注入到屬 性。Struts2中,一個Action對應一個request,response上下文,在接收參數時,能夠經過屬性接收,這說明屬性參數是讓多個方法共享的。Struts2中Action的一個方法能夠對 應一個url,而其類屬性卻被全部方法共享,這也就沒法用註解或其餘方式標識其所屬方法了,只能設計爲多例。
SpringMVC是方法級別的攔截,一個方法對應一個Request上下文,因此方法直接基本上是獨立的,獨享request,response數據。而每一個方法同時又何一個url對應,參數的傳 遞是直接注入到方法中的,是方法所獨有的。處理結果經過ModeMap返回給框架。在Spring整合時,SpringMVC的Controller Bean默認單例模式Singleton,因此默認對全部的 請求,只會建立一個Controller,有應爲沒有共享的屬性,因此是線程安全的,若是要改變默認的做用域,須要添加@Scope註解修改。
Struts2有本身的攔截Interceptor機制,SpringMVC這是用的是獨立的Aop方式,這樣致使Struts2的配置文件量仍是比SpringMVC大。
2、底層框架不一樣
Struts2採用Filter(StrutsPrepareAndExecuteFilter)實現,SpringMVC(DispatcherServlet)則採用Servlet實現。Filter在容器啓動以後即初始化;服務中止之後墜毀,晚於 Servlet。Servlet在是在調用時初始化,先於Filter調用,服務中止後銷燬。
3、性能方面
Struts2是類級別的攔截,每次請求對應實例一個新的Action,須要加載全部的屬性值注入,SpringMVC實現了零配置,因爲SpringMVC基於方法的攔截,有加載一次單例模式bean注入。因此,SpringMVC開發效率和性能高於Struts2。
8.如何避免 sql 注入?
SQL Injection 就是利用
某些數據庫的外部接口將用戶數據插入到實際的數據庫操做語言(SQL)當中,從而達到入
侵數據庫乃至操做系統的目的。它的產生主要是因爲程序對用戶輸入的數據沒有進行嚴格的
過濾,致使非法數據庫查詢語句的執行 。
對 Java、JSP 開發的應用,可使用 PrepareStatement+Bind-variable 來防止 SQL 注入(待擴展)
------------待補充-----------歡迎評論補充-------共同探討----