更新時間:2019-07-22 11:42:36 來源:動力節點 瀏覽4601次
在2019年Java程序員備戰面試的過程中,整理一下面試題,大多數題目都是自己手敲的,網上也有很多這樣的總結,總是很亂,所以小編花了一些時間把自己覺得重要的東西總結了一下。
@PathVariable注解和@RequestParam注解的區別。
@RequestParam注解是獲取靜態URL傳入的參數
@PathVariable是獲取請求路徑中的變量作為參數
/需要和@RequestMapping("item/{itemId}")配合使用
@Param注解和@RequestParam注解的區別。
@Parm 指定request中必須包含某些參數值是,才讓該方法處理。
注意@RequestMapping(value="test",params={"username","age!=10"})
@param一般標注在xxxmapper.Java文件中的參數位置,代表給傳入的參數別名,一般用在傳入多個參數的時候,在xml文件中使用sql語句通過占#{} ${}占位符來獲取
#{}防止sql注入
@RequestParam value請求的參數 defaultvalue
1.request.getParameter(“參數名”)
2.用@RequestParam注解獲取
Servlet標準中的過濾器:Filter和SpringMVC中的攔截器:Interceptor有什么異同?
Filter:
在HttpServletRequest到達Servlet之前,攔截客戶的HttpServletRequest。
根據需要檢查HttpServletRequest,也可以修改HttpServletRequest頭和數據。
在HttpServletResponse到達客戶端之前,攔截HttpServletResponse。
根據需要檢查HttpServletResponse,也可以修改HttpServletResponse頭和數據。
兩者的本質區別:
1、攔截器是基于java的反射機制的,而過濾器是基于函數回調
2、過濾器依賴與servlet容器,而攔截器不依賴與servlet容器依賴spring容器
3、攔截器只能對action請求起作用,而過濾器則可以對幾乎所有的請求起作用
4、攔截器可以訪問action上下文、值棧里的對象,而過濾器不能
5、在action的生命周期中,攔截器可以多次被調用,而過濾器只能在容器初始化時被調用一次
執行順序:過濾前-攔截前-Action處理-攔截后-過濾后。
攔截器有前置/后置/完成三個方法,在沒有執行到處理器(controller)時不會只執行任何攔截器比如我controller沒有/user路徑
多個執行順序前1前2前3后3后2后1完3完2完1
2returnfalse前1前2完1
(攔截了沒有到達處理器,都不會觸發后置)
前置方法為true時必定有完成方法
在Mybatis環境中如何在SQL語句中引用接口方法傳入的參數?
一. 用Map,在方法體里,我們把多個參數存放在map里,然后在前面獲得它
二. 用ibatis中的@Param
在Mybatis環境中如何在SQL語句中引用接口方法傳入的參數?
一. 用Map,在方法體里,我們把多個參數存放在map里,然后在前面獲得它
二. 用ibatis中的@Param
請介紹一下Maven依賴范圍中compile、test、provided這三種情況
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習