1.Servlet的生命週期是什麼? Servlet和CGI的區別是什麼
答:web容器載入servlet,生命週期開始。通過調用servlet的init()方法進行servlet的初始化。通過調用service()方法實現,
根據請求的不同調用不同的do***()方法。結束服務,web容器調用servlet的destroy()方法。
與cgi的區別在於servlet處於伺服器處理序中,它通過多線程方式運行其service方法,一個執行個體可以服務於多個請求,
並且其執行個體一般不會銷毀,而CGI對每個請求都產生新的進程,服務完成後就銷毀,所以效率上低於servlet。
2.描述JSP和Servlet的區別、共同點、各自應用的範圍
答:儘管JSP在本質上就是SERVLET,但是兩者的建立方式不一樣.Servlet完全是JAVA程式碼構成擅長於流程式控制制和交易處理而通過Servlet
來產生動態網頁很不直觀;JSP由HTML代碼和JSP標籤構成可以方便地編寫動態網頁因此在實際應用中採用Servlet來控制商務程序,而采
用JSP來產生動態網頁.在struts架構中,JSP位於MVC設計模式的視圖層,而Servlet位於控制層.
3.客戶請求訪問HTML頁面與訪問Servlet有什麼異同?
相同:都使用HTTP協議 ;區別:後者需要在web.xml中配置URL路徑。
例子: 假設在helloapp應用中有一個HelloServlet類,它在web.xml檔案中的配置如下:
<servlet>
<servlet-name> HelloServlet </servlet-name>
<servlet-class>org.javathinker.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name> HelloServlet </servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
那麼在瀏覽器端訪問HelloServlet的URL是:
http://localhost:8080/helloapp/hello
4.jsp指令有哪些?
答:jsp指令分為兩大類型,page指令和動作指令
動作指令通常有:useBean,setProperty,getProperty,forward,plugin,include
jsp如何使用注釋?
答:1) <%-- --%> 2); //; 3)/** **/; 4)<!-- -->;