書(shū)名: JavaWeb從入門(mén)到精通(視頻實(shí)戰(zhàn)版)作者名: 常倬林等編著本章字?jǐn)?shù): 709字更新時(shí)間: 2018-12-31 19:36:08
6.10 常見(jiàn)面試題分析
1. 根據(jù)你的理解,簡(jiǎn)述EL所包含的隱含對(duì)象
答:EL表達(dá)式中包含11個(gè)隱含對(duì)象,它們分別為:
1)PageContext:表示此JSP的PageContext。
2)pageScope:取得Page范圍的屬性名稱(chēng)所對(duì)應(yīng)的值。
3)requestScope:取得Request范圍的屬性名稱(chēng)所對(duì)應(yīng)的值。
4)sessionScope:取得session范圍的屬性名稱(chēng)所對(duì)應(yīng)的值。
5)applicationScope:取得Application范圍的屬性名稱(chēng)所對(duì)應(yīng)的值。
6)param:如同ServletRequest.getParameter(String name)。回傳String類(lèi)型的值。
7)paramValues:如同ServletRequest.getParameterValues(String name)。回傳String[]類(lèi)型的值。
8)header:如同ServletRequest.getHeader(String name)。回傳String類(lèi)型的值。
9)headerValues:如同ServletRequest.getHeaders(String name)。回傳String[]類(lèi)型的值。
10)Cookie:如同HttpServletRequest.getCookies()。
11)initParam:如同ServletContext、getInitParameter(String name)。回傳String類(lèi)型的值。
2. 在具體開(kāi)發(fā)Struts2框架應(yīng)用時(shí),經(jīng)常會(huì)用到哪些數(shù)據(jù)標(biāo)簽
答:在具體開(kāi)發(fā)中,經(jīng)常會(huì)遇到如下的數(shù)據(jù)標(biāo)簽,它們分別為:
1)property標(biāo)簽:該標(biāo)簽也許是Struts2中最常用的標(biāo)簽了,它實(shí)現(xiàn)的功能也是很簡(jiǎn)單的—輸出OGNL表達(dá)式的值。
2)set標(biāo)簽:該標(biāo)簽賦予變量一個(gè)特定范圍內(nèi)的值。當(dāng)希望給一個(gè)變量賦一個(gè)復(fù)雜的表達(dá)式,每次訪(fǎng)問(wèn)該變量而不是復(fù)雜的表達(dá)式時(shí)用到。其在兩種情況下非常有用:復(fù)雜的表達(dá)式很耗時(shí)(性能提升)或者很難理解(代碼可讀性提高)。
3)push標(biāo)簽:雖然set標(biāo)簽可以在action context中放置數(shù)據(jù),而push標(biāo)簽則可以將對(duì)象的引用壓入值棧中。如果圍繞某單個(gè)對(duì)象做大量操作,則是相當(dāng)有用的。可以將對(duì)象壓入值棧之后直接對(duì)其進(jìn)行操作,而不需要在每個(gè)與對(duì)象管理的表達(dá)式之前加上對(duì)象名字。
4)bean標(biāo)簽:實(shí)例化一個(gè)符合JavaBeans規(guī)范的class,標(biāo)簽體內(nèi)可以包含幾個(gè)Param元素,用于調(diào)用setter方法給此class的屬性賦值。如果指定了id屬性,則該實(shí)例將會(huì)放到值棧中。bean標(biāo)簽的參數(shù)如表6.14所示。
5)action標(biāo)簽:通過(guò)指定命名空間和action名稱(chēng),該標(biāo)簽允許在JSP頁(yè)面直接調(diào)用action標(biāo)簽體用來(lái)渲染action執(zhí)行結(jié)果,除非設(shè)定了executeResult參數(shù)為true,否則在struts.xml中為該action指定的Result Processor不會(huì)執(zhí)行,這個(gè)值默認(rèn)是false。
- VMware View Security Essentials
- Java Web基礎(chǔ)與實(shí)例教程(第2版·微課版)
- Hands-On Data Structures and Algorithms with JavaScript
- Mastering QGIS
- 高級(jí)語(yǔ)言程序設(shè)計(jì)(C語(yǔ)言版):基于計(jì)算思維能力培養(yǎng)
- 零基礎(chǔ)輕松學(xué)SQL Server 2016
- 量化金融R語(yǔ)言高級(jí)教程
- Mastering Android Development with Kotlin
- Windows內(nèi)核編程
- Couchbase Essentials
- Instant Automapper
- Appcelerator Titanium:Patterns and Best Practices
- JavaScript Concurrency
- 微信小程序開(kāi)發(fā)邊做邊學(xué)(微課視頻版)
- C# 7 and .NET Core 2.0 Blueprints