1. 程式人生 > >java面試--基礎5

java面試--基礎5

jsp

JSP中動態INCLUDE與靜態INCLUDE的區別

靜態include(<%@include file = “url”%>):
	指令;不會檢查頁面檔案的變化,先包含後編譯
動態include(<jsp:include page=”url” flush=”true”>)
	動作;可帶參,會時刻檢查頁面的變化,先編譯後包含。

doGet()和doPost()

Jsp頁面中的form標籤裡的method屬性為get時呼叫doGet(),
	為post時呼叫doPost()

頁面間物件傳遞的方法

 request,session,application,cookie等

JSP 工作原理

翻譯(.jsp--.java) 
編譯(.class)    
例項化(new)   
初始化(JSP第一次本訪問)   
不斷接受請求呼叫   
銷燬(伺服器停止,網站移除)

Get和post的區別

Get:不安全位址列會顯示引數,在位址列顯示引數url長度最多255
Post:比較安全位址列不會顯示引數, 在表單體內傳遞沒有限制大小理論上1M

重定向和轉發的區別

重定向:從瀏覽器出發兩次,瀏覽器的地址會改變(訪問dologin.jsp,二次訪問
	welcome.jsp),訪問第二次的時候不會攜帶第一次的資料
轉發:從瀏覽器出發一次,瀏覽器位址列不會改變(訪問dologin.jsp),
	值會一直跟下去

Cookie和session的區別

Cookie儲存在本地客戶端,session儲存在伺服器
Cookie只能儲存字串,session可以儲存物件
Cookie有效期可以設定,session瀏覽器開啟到關閉之間
Cookie儲存比較不安全的資料,session儲存安全性比較高的資料

內建物件範圍

Page:只作用在當前頁
Request:作用在請求,轉發可以獲取到資料,重定向不可以獲取到
Session:瀏覽器開啟到關閉之間
Application:伺服器開啟到關閉之間

JSP的九大內建物件

request      HttpServletRequest  用於伺服器獲取使用者提交的資料
response	 HttpServletResponse 用於向客戶端傳送資料
session	     HttpSession         會話,瀏覽器開啟到關閉之間儲存使用者資料
application	 ServletContext      伺服器開啟到關閉之間儲存使用者資料,全域性的資料
out	             PrintWriter         輸出流,用於向客戶端輸出資料的
page	         this                頁面物件
pageContext  PageContext         頁面上下文物件,只在本頁面有效
config       ServletConfig       配置物件,用於獲取web.xml中的上下文和全域性上下文
exception    Throwable           處理頁面的異常

Jsp和servlet區別

Jsp本質就是servlet
Jsp側重於檢視,servlet側重於控制邏輯。

如何解決get和post中文亂碼問題

Post : request.setCharacterEncoding("utf-8");
Get  :1.配置Tomcat中URIEcoding="UTF-8"
	  2.解碼(把原有的引數拆分成byte陣列後再通過該陣列生成指定編碼的String)

怎麼實現jsp裡面巢狀一個介面

用iframe的方式巢狀到主頁面中去

如何在jsp頁面獲取當前ip地址

request.getRemoteAddr()

JS

Js和Jq的區別

JavaScript 是通過<script></script>標籤插入到HTML頁面,
	可由所有的現代瀏覽器執行的一種輕量級的程式語言。
JQuery是一個JavaScript函式庫。或者說是JavaScript中最流行的一種框架

一個input裡面id是a,js和jq分別怎麼取值、賦值、刪除

Js: document.getElementById(”a”).value
Jq: $(”#a”).val()

JSTL和EL

#{}和${}的區別

#{}會將傳入的引數當做字串,解析時會加入“”,可以防止注入式攻擊
${}不能防止注入式攻擊
一般使用#{}

Servlet

servlet的生命週期

在被伺服器例項化後,容器執行其init方法,
請求到達時執行其service方法,service方法自動派遣執行
與請求對應的doXXX方法(doGet,doPost)等,
當伺服器決定將例項銷燬的時候呼叫其destroy方法

servlet的配置

<web-app>
	<servlet>
		<servlet-name>Admin</servlet-name>
		<servlet-class>jb-aptech.adminservlet</servlet-class>
		<init-param>
			<param-name>email</param-name>
			<param-value>[email protected]</param-value>
		</init-param> 
	</servlet>
</web-app>

Ajax

json和Gson的區別

json是一種資料格式,便於資料傳輸、儲存、交換。
Gson是一種元件庫,可以把java物件資料轉換成json資料格式。