国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

JSP面試題都在這里

gaosboy / 2014人閱讀

摘要:下面是我整理下來(lái)的知識(shí)點(diǎn)圖上的知識(shí)點(diǎn)都可以在我其他的文章內(nèi)找到相應(yīng)內(nèi)容。在中,尤其重要的是對(duì)象。

下面是我整理下來(lái)的JSP知識(shí)點(diǎn):

圖上的知識(shí)點(diǎn)都可以在我其他的文章內(nèi)找到相應(yīng)內(nèi)容。

JSP常見(jiàn)面試題 jsp靜態(tài)包含和動(dòng)態(tài)包含的區(qū)別
jsp靜態(tài)包含和動(dòng)態(tài)包含的區(qū)別

在講解request對(duì)象的時(shí)候,我們?cè)?jīng)使用過(guò)request.getRequestDispatcher(String url).include(request,response)來(lái)對(duì)頁(yè)頭和頁(yè)尾面進(jìn)行包含

inclue指令也是做這樣的事情,我們來(lái)試驗(yàn)一下吧!

這是頁(yè)頭

    <%@ page contentType="text/html;charset=UTF-8" language="java"   %>
    
        
            頁(yè)頭
        
        
        我是頁(yè)頭
        


這是頁(yè)尾

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    
    
        頁(yè)尾
    
    
    
    我是頁(yè)尾
    
    
    

在1.jsp中把頁(yè)頭和頁(yè)尾包含進(jìn)來(lái)


    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    
    
        包含頁(yè)頭和頁(yè)尾進(jìn)來(lái)
    
    
    
    
    <%@include file="head.jsp" %>
    <%@include file="foot.jsp" %>
    
    

訪問(wèn)1.jsp

include指令是靜態(tài)包含。靜態(tài)包含的意思就是:把文件的代碼內(nèi)容都包含進(jìn)來(lái),再編譯!,看一下jsp的源代碼就知道了!

上面已經(jīng)提及到了,include指令是靜態(tài)包含,include行為是動(dòng)態(tài)包含。其實(shí)include行為就是封裝了request.getRequestDispatcher(String url).include(request,response)

include行為語(yǔ)法是這個(gè)樣子的

    

我們先來(lái)使用一下把,在1.jsp頁(yè)面中也將頁(yè)頭和頁(yè)尾包含進(jìn)來(lái)。

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    
    
        包含頁(yè)頭和頁(yè)尾進(jìn)來(lái)
    
    
        
        
    
    

訪問(wèn)1.jsp頁(yè)面看一下效果:

使用jsp行為來(lái)包含文件,jsp源文件是這樣子的:

jsp行為包含文件就是先編譯被包含的頁(yè)面,再將頁(yè)面的結(jié)果寫(xiě)入到包含的頁(yè)面中(1.jsp)

當(dāng)然了,現(xiàn)在有靜態(tài)包含和動(dòng)態(tài)包含,使用哪一個(gè)更好呢?答案是:動(dòng)態(tài)包含

動(dòng)態(tài)包含可以向被包含的頁(yè)面?zhèn)鬟f參數(shù)(用處不大),并且是分別處理被包含頁(yè)面的(將被包含頁(yè)面編譯后得出的結(jié)果再寫(xiě)進(jìn)包含頁(yè)面)【如果有相同名稱的參數(shù),使用靜態(tài)包含就會(huì)報(bào)錯(cuò)!】!

模擬一下場(chǎng)景吧,現(xiàn)在我的頭頁(yè)面有個(gè)名為s的字符串變量

    <%@ page contentType="text/html;charset=UTF-8" language="java"   %>
    
        
            頁(yè)頭
        
        
        
        <%
            String s = "zhongfucheng";
        %>
        我是頁(yè)頭呀
        


我的頁(yè)尾也有個(gè)名為s的字符串變量

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    
    
        頁(yè)尾
    
    
    <%
        String s = "zhongfucheng";
    %>
    
    我是頁(yè)尾呀
    
    
    

現(xiàn)在我使用靜態(tài)包含看看會(huì)發(fā)生什么,出現(xiàn)異常了。

出現(xiàn)異常的原因很簡(jiǎn)單,就是同一個(gè)文件中有兩個(gè)相同的變量s

使用動(dòng)態(tài)包含就可以避免這種情況

總結(jié)

<%@include file="xxx.jsp"%>為jsp中的編譯指令,其文件的包含是發(fā)生在jsp向servlet轉(zhuǎn)換的時(shí)期,而是jsp中的動(dòng)作指令,其文件的包含是發(fā)生在編譯時(shí)期,也就是將java文件編譯為class文件的時(shí)期

使用靜態(tài)包含只會(huì)產(chǎn)生一個(gè)class文件,而使用動(dòng)態(tài)包含會(huì)產(chǎn)生多個(gè)class文件

使用靜態(tài)包含,包含頁(yè)面和被包含頁(yè)面的request對(duì)象為同一對(duì)象,因?yàn)殪o態(tài)包含只是將被包含的頁(yè)面的內(nèi)容復(fù)制到包含的頁(yè)面中去;而動(dòng)態(tài)包含包含頁(yè)面和被包含頁(yè)面不是同一個(gè)頁(yè)面,被包含的頁(yè)面的request對(duì)象可以取到的參數(shù)范圍要相對(duì)大些,不僅可以取到傳遞到包含頁(yè)面的參數(shù),同樣也能取得在包含頁(yè)面向下傳遞的參數(shù)

jsp有哪些內(nèi)置對(duì)象?作用分別是什么?
jsp有哪些內(nèi)置對(duì)象?作用分別是什么?

九個(gè)內(nèi)置對(duì)象:

pageContext

page

config

request

response

session

application

exception

out

其中,request、response、session、application、config這五個(gè)對(duì)象和Servlet的API是一樣的。這5個(gè)對(duì)象我就不解釋了。

在JSP中,尤其重要的是pageContext對(duì)象。

pageContext是內(nèi)置對(duì)象中最重要的一個(gè)對(duì)象,它代表著JSP頁(yè)面編譯后的內(nèi)容(也就是JSP頁(yè)面的運(yùn)行環(huán)境)!

pageContext對(duì)象

既然它代表了JSP頁(yè)面編譯后的內(nèi)容,理所當(dāng)然的:它封裝了對(duì)其他8大內(nèi)置對(duì)象的引用!,也就是說(shuō),通過(guò)pageContext可以獲取到其他的8個(gè)內(nèi)置對(duì)象!

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    
    
        獲取八大內(nèi)置對(duì)象
    
    
    <%
    
        System.out.println(pageContext.getSession());
        System.out.println(pageContext.getRequest());
        System.out.println(pageContext.getResponse());
    
        System.out.println(pageContext.getException());
    
        System.out.println(pageContext.getPage());
        System.out.println(pageContext.getServletConfig());
        System.out.println(pageContext.getServletContext());
        System.out.println(pageContext.getOut());
    
    %>
    
    
    

看下效果:

pageContext作為域?qū)ο?/pre>

類似于request,session,ServletContext作為域?qū)ο蠖?strong>都有以下三個(gè)方法:

setAttribute(String name,Objcet o)

getAttribute(String name)

removeAttribute(String name)

當(dāng)然了,pageContext也不例外,pageContext也有這三個(gè)方法

pageContext本質(zhì)上代表的是當(dāng)前JSP頁(yè)面編譯后的內(nèi)容,作為域?qū)ο蠖?,它就代表著?dāng)前JSP頁(yè)面(也就是page)!也就是說(shuō):pageContext域?qū)ο笾辉趐age范圍內(nèi)有效,超出了page范圍就無(wú)效了!

首先來(lái)看看在page范圍內(nèi)能不能使用

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    
    
        使用page域?qū)ο?/title>
    </head>
    <body>
    <%
        pageContext.setAttribute("name", "zhongfucheng");
    %>
    <%
        String value = (String) pageContext.getAttribute("name");
        System.out.println(value);
    %>
    
    </body>
    </html>

</pre>
<p>效果如下:</p>
<p><script type="text/javascript">showImg("https://segmentfault.com/img/remote/1460000013228736?w=839&h=563");</script></p>

<p>我們現(xiàn)在來(lái)試驗(yàn)一下<strong>是不是超出了page范圍就無(wú)效了!</strong>
</p>
<p><strong>在2.jsp中request域?qū)ο笤O(shè)置屬性</strong></p>

<pre>
    
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
        <title>request域?qū)ο笤O(shè)置屬性
    
    
    <%
        //這是request域?qū)ο蟊4娴膬?nèi)容
        request.setAttribute("name","zhongfucheng");
    %>

    <%--跳轉(zhuǎn)到1.jsp中--%>

    
    
    
    

企圖在1.jsp中pageContext取出request存進(jìn)去的屬性

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    
    
        在page域?qū)ο螳@取屬性
    
    
    
    <%
        //企圖獲取request域?qū)ο蟠孢M(jìn)的屬性
        String value = (String) pageContext.getAttribute("name");
        System.out.println(value);
    %>
    
    
    

效果如下:

pageContext本質(zhì)上代表著編譯后JSP的內(nèi)容,pageContext還可以封裝了訪問(wèn)其他域的方法

上面的pageContext默認(rèn)是page范圍的但pageContext對(duì)象重載了set、get、removeAttribute這三個(gè)方法

getAttribute(String name,int scope)

setAttribute(String name,Object value,int scope)

removeAttribute(String name,int scope)

多了一個(gè)設(shè)置域范圍的一個(gè)參數(shù),如果不指定默認(rèn)就是page。當(dāng)然了,pageContext把request、session、application、page這幾個(gè)域?qū)ο蠓庋b著了靜態(tài)變量供我們使用

PageContext.APPLICATION_SCOPE

PageContext.SESSION_SCOPE

PageContext.REQUEST_SCOPE

PageContext.PAGE_SCOPE

剛才我們沒(méi)有使用重載方法的時(shí)候,使用pageContext是無(wú)法獲取到request域?qū)ο笤O(shè)置的屬性的。現(xiàn)在我們使用重載后的方法看一下能不能獲取得到!

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    
    
        在page域?qū)ο螳@取request域?qū)ο蟮膶傩?/title>
    </head>
    <body>
    
    <%
        //使用重載的方法獲取request域?qū)ο蟮膶傩?        String value = (String) pageContext.getAttribute("name",pageContext.REQUEST_SCOPE);
        System.out.println(value);
    %>
    
    </body>
    </html>
</pre>
<p>效果:</p>
<p><script type="text/javascript">showImg("https://segmentfault.com/img/remote/1460000013228738?w=1368&h=549");</script></p>


<p>
<p>pageContexst還有這么一個(gè)方法:</p>
<p><strong>findAttribute(String name)</strong></p>
</p>
<p><strong>該方法會(huì)查找各個(gè)域的屬性,從小到大開(kāi)始尋找!也就是page—>request->session->application。</strong></p>
<p>我們用此方法看能不能查找出request域?qū)ο蟮膶傩园桑?/p>

<pre>
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
        <title>使用findAttribute
    
    
    
    <%
    
        //使用findAttribute查找2.jsp中request域?qū)ο蟮膶傩?        String value = (String) pageContext.findAttribute("name");
        System.out.println(value);
    %>
    
    
    

效果如下:

out對(duì)象:

out對(duì)象用于向?yàn)g覽器輸出數(shù)據(jù),與之對(duì)應(yīng)的是Servlet的PrintWriter對(duì)象。然而這個(gè)out對(duì)象的類型并不是PrintWriter,是JspWriter

我們可以簡(jiǎn)單理解為:JspWriter就是帶緩存的PrintWrieter

out對(duì)象的原理如下:

只有向out對(duì)象中寫(xiě)入了內(nèi)容,且滿足如下任何一個(gè)條件時(shí),out對(duì)象才去調(diào)用ServletResponse.getWriter方法,并通過(guò)該方法返回的PrintWriter對(duì)象將out對(duì)象的緩沖區(qū)中的內(nèi)容真正寫(xiě)入到Servlet引擎提供的緩沖區(qū)中

設(shè)置page指令的buffer屬性關(guān)閉了out對(duì)象的緩存功能

out對(duì)象的緩沖區(qū)已滿

整個(gè)JSP頁(yè)面結(jié)束

一般我們?cè)贘SP頁(yè)面輸出都是用表達(dá)式(<%=%>),所以out對(duì)象用得并不是很多

page對(duì)象

內(nèi)置對(duì)象page是HttpJasPage對(duì)象,其實(shí)page對(duì)象代表的就是當(dāng)前JSP頁(yè)面,是當(dāng)前JSP編譯后的Servlet類的對(duì)象。也就是說(shuō):page對(duì)象相當(dāng)于普通java類的this

exception對(duì)象

內(nèi)置對(duì)象exception是java.lang.Exception類的對(duì)象,exception封裝了JSP頁(yè)面拋出的異常信息。exception經(jīng)常被用來(lái)處理錯(cuò)誤頁(yè)面

前面我們已經(jīng)講過(guò)了怎么設(shè)置錯(cuò)誤頁(yè)面了,下面我們就來(lái)簡(jiǎn)單使用一下exception對(duì)象吧

1.jsp頁(yè)面

    <%@ page contentType="text/html;charset=UTF-8" language="java" errorPage="error.jsp" %>
    
    
    
        
    
    
    
    <%--模擬空指針異常的錯(cuò)誤--%>
    <%
    
        String sss = null;
        sss.length();
    %>
    
    
    

error.jsp頁(yè)面


    <%@ page contentType="text/html;charset=UTF-8" language="java" isErrorPage="true" %>
    
    
    
        錯(cuò)誤頁(yè)面
    
    
    
    <%
        out.println("程序拋出了異常:" + exception);
    %>
    
    
    

效果:

總結(jié)

request 用戶端請(qǐng)求,此請(qǐng)求會(huì)包含來(lái)自GET/POST請(qǐng)求的參數(shù)

response 網(wǎng)頁(yè)傳回用戶端的回應(yīng)

pageContext 網(wǎng)頁(yè)的屬性是在這里管理,代表的編譯后JSP內(nèi)容

session 與請(qǐng)求有關(guān)的會(huì)話期

application servlet 正在執(zhí)行的內(nèi)容

out 用來(lái)傳送回應(yīng)的輸出

config servlet的構(gòu)架部件

page JSP網(wǎng)頁(yè)本身

exception 針對(duì)錯(cuò)誤網(wǎng)頁(yè),未捕捉的例外

jsp和servlet的區(qū)別、共同點(diǎn)、各自應(yīng)用的范圍?
jsp和servlet的區(qū)別、共同點(diǎn)、各自應(yīng)用的范圍?

JSP是Servlet技術(shù)的擴(kuò)展,本質(zhì)上就是Servlet的簡(jiǎn)易方式。JSP編譯后是“類servlet”。

Servlet和JSP最主要的不同點(diǎn)在于:Servlet的應(yīng)用邏輯是在Java文件中,并且完全從表示層中的HTML里分離開(kāi)來(lái)。而JSP的情況是Java和HTML可以組合成一個(gè)擴(kuò)展名為.jsp的文件。

JSP側(cè)重于視圖,Servlet主要用于控制邏輯。

屬性作用域范圍
屬性作用域范圍

page【只在一個(gè)頁(yè)面中保存屬性,跳轉(zhuǎn)頁(yè)面無(wú)效】

requet【只在一次請(qǐng)求中保存屬性,服務(wù)器跳轉(zhuǎn)有效,瀏覽器跳轉(zhuǎn)無(wú)效】

session【在一個(gè)會(huì)話范圍中保存屬性,無(wú)論何種跳轉(zhuǎn)均有效,關(guān)閉瀏覽器后無(wú)效】

application【在整個(gè)服務(wù)器中保存,所有用戶都可以使用】

應(yīng)用場(chǎng)景:

request:如果客戶向服務(wù)器發(fā)請(qǐng)求,產(chǎn)生的數(shù)據(jù),用戶看完就沒(méi)用了,像這樣的數(shù)據(jù)就存在request域,像新聞數(shù)據(jù),屬于用戶看完就沒(méi)用的

session:如果客戶向服務(wù)器發(fā)請(qǐng)求,產(chǎn)生的數(shù)據(jù),用戶用完了等一會(huì)兒還有用,像這樣的數(shù)據(jù)就存在session域中,像購(gòu)物數(shù)據(jù),用戶需要看到自己購(gòu)物信息,并且等一會(huì)兒,還要用這個(gè)購(gòu)物數(shù)據(jù)結(jié)帳

servletContext:如果客戶向服務(wù)器發(fā)請(qǐng)求,產(chǎn)生的數(shù)據(jù),用戶用完了,還要給其它用戶用,像這樣的數(shù)據(jù)就存在servletContext域中,像聊天數(shù)據(jù)

寫(xiě)出5種JSTL常用標(biāo)簽
寫(xiě)出5種JSTL常用標(biāo)簽
,,,,
寫(xiě)一個(gè)自定義標(biāo)簽要繼承什么類
寫(xiě)一個(gè)自定義標(biāo)簽要繼承什么類

我們可以有兩種方式來(lái)實(shí)現(xiàn)自定義標(biāo)簽:

傳統(tǒng)方式,實(shí)現(xiàn)Tag接口(老方法)

簡(jiǎn)單方式,繼承SimpleTagSupport類

SimpleTagSupport類的執(zhí)行順序(原理):

①WEB容器調(diào)用標(biāo)簽處理器對(duì)象的setJspContext方法,將代表JSP頁(yè)面的pageContext對(duì)象傳遞給標(biāo)簽處理器對(duì)象

②WEB容器調(diào)用標(biāo)簽處理器對(duì)象的setParent方法,將父標(biāo)簽處理器對(duì)象傳遞給這個(gè)標(biāo)簽處理器對(duì)象?!咀⒁?,只有在標(biāo)簽存在父標(biāo)簽的情況下,WEB容器才會(huì)調(diào)用這個(gè)方法】

③如果調(diào)用標(biāo)簽時(shí)設(shè)置了屬性,容器將調(diào)用每個(gè)屬性對(duì)應(yīng)的setter方法把屬性值傳遞給標(biāo)簽處理器對(duì)象。如果標(biāo)簽的屬性值是EL表達(dá)式或腳本表達(dá)式,則WEB容器首先計(jì)算表達(dá)式的值,然后把值傳遞給標(biāo)簽處理器對(duì)象。

④如果簡(jiǎn)單標(biāo)簽有標(biāo)簽體,容器將調(diào)用setJspBody方法把代表標(biāo)簽體的JspFragment對(duì)象傳遞進(jìn)來(lái)

⑤執(zhí)行標(biāo)簽時(shí):容器調(diào)用標(biāo)簽處理器的doTag()方法,開(kāi)發(fā)人員在方法體內(nèi)通過(guò)操作JspFragment對(duì)象,就可以實(shí)現(xiàn)是否執(zhí)行、迭代、修改標(biāo)簽體的目的。

總結(jié)

SimpleTagSupport,一般調(diào)用doTag方法或者實(shí)現(xiàn)SimpleTag接口

JSP是如何被執(zhí)行的?執(zhí)行效率比SERVLET低嗎?
JSP是如何被執(zhí)行的?執(zhí)行效率比SERVLET低嗎?

當(dāng)客戶端向一個(gè)jsp頁(yè)面發(fā)送請(qǐng)求時(shí),Web Container將jsp轉(zhuǎn)化成servlet的源代碼(只在第一次請(qǐng)求時(shí)),然后編譯轉(zhuǎn)化后的servlet并加載到內(nèi)存中執(zhí)行,執(zhí)行的結(jié)果response到客戶端

jsp只在第一次執(zhí)行的時(shí)候會(huì)轉(zhuǎn)化成servlet,以后每次執(zhí)行,web容器都是直接執(zhí)行編譯后的servlet,所以jsp和servlet只是在第一次執(zhí)行的時(shí)候不一樣,jsp慢一點(diǎn),以后的執(zhí)行都是相同的

如何避免jsp頁(yè)面自動(dòng)生成session對(duì)象?為什么要這么做?
如何避免jsp頁(yè)面自動(dòng)生成session對(duì)象?為什么要這么做?

可以使用頁(yè)面指令顯式關(guān)掉,代碼如下:

<%@ page session="false" %>

jsp的缺點(diǎn)?
jsp的缺點(diǎn)?

1)不好調(diào)試

2)與其他腳本語(yǔ)言的交互(可讀性差)

說(shuō)出Servlet和CGI的區(qū)別?
說(shuō)出Servlet和CGI的區(qū)別?

Servlet處于服務(wù)器進(jìn)程中,只會(huì)有一個(gè)servlet實(shí)例,每個(gè)請(qǐng)求都會(huì)產(chǎn)生一個(gè)新的線程,而且servlet實(shí)例一般不會(huì)銷(xiāo)毀

CGI:來(lái)一個(gè)請(qǐng)求就創(chuàng)建一個(gè)進(jìn)程,用完就銷(xiāo)毀,效率低于servlet

簡(jiǎn)述JSP的設(shè)計(jì)模式。
簡(jiǎn)述JSP的設(shè)計(jì)模式。

在Web開(kāi)發(fā)模式中,有兩個(gè)主要的開(kāi)發(fā)結(jié)構(gòu),稱為模式一(Mode I)和模式二(Mode II)

首先我們來(lái)理清一些概念吧:

DAO(Data Access Object):主要對(duì)數(shù)據(jù)的操作,增加、修改、刪除等原子性操作。

Web層:界面+控制器,也就是說(shuō)JSP【界面】+Servlet【控制器】

Service業(yè)務(wù)層:將多個(gè)原子性的DAO操作進(jìn)行組合,組合成一個(gè)完整的業(yè)務(wù)邏輯

控制層:主要使用Servlet進(jìn)行控制

數(shù)據(jù)訪問(wèn)層:使用DAO、Hibernate、JDBC技術(shù)實(shí)現(xiàn)對(duì)數(shù)據(jù)的增刪改查

JavaBean用于封裝數(shù)據(jù),處理部分核心邏輯,每一層中都用到!

模式一指的就是在開(kāi)發(fā)中將顯示層、控制層、數(shù)據(jù)層的操作統(tǒng)一交給JSP或者JavaBean來(lái)進(jìn)行處理!

模式一有兩種情況:

完全使用JSP做開(kāi)發(fā):

優(yōu)點(diǎn):

開(kāi)發(fā)速度賊快,只要寫(xiě)JSP就行了,JavaBean和Servlet都不用設(shè)計(jì)!

小幅度修改代碼方便,直接修改JSP頁(yè)面交給WEB容器就行了,不像Servlet還要編譯成.class文件再交給服務(wù)器!【當(dāng)然了,在ide下開(kāi)發(fā)這個(gè)也不算是事】

缺點(diǎn):

程序的可讀性差、復(fù)用性低、代碼復(fù)雜!什么jsp代碼、html代碼都往上面寫(xiě),這肯定很難閱讀,很難重用!

使用JSP+JavaBean做開(kāi)發(fā):

優(yōu)點(diǎn):

程序的可讀性較高,大部分的代碼都寫(xiě)在JavaBean上,不會(huì)和HTML代碼混合在一起,可讀性還行的

可重復(fù)利用高,核心的代碼都由JavaBean開(kāi)發(fā)了,JavaBean的設(shè)計(jì)就是用來(lái)重用、封裝,大大減少編寫(xiě)重復(fù)代碼的工作!

缺點(diǎn):

沒(méi)有流程控制,程序中的JSP頁(yè)面都需要檢查請(qǐng)求的參數(shù)是否正確,異常發(fā)生時(shí)的處理。顯示操作和業(yè)務(wù)邏輯代碼工作會(huì)緊密耦合在一起的!日后維護(hù)會(huì)困難

Mode II 中所有的開(kāi)發(fā)都是以Servlet為主體展開(kāi)的,由Servlet接收所有的客戶端請(qǐng)求,然后根據(jù)請(qǐng)求調(diào)用相對(duì)應(yīng)的JavaBean,并所有的顯示結(jié)果交給JSP完成!,也就是俗稱的MVC設(shè)計(jì)模式!

MVC設(shè)計(jì)模式:

顯示層(View):主要負(fù)責(zé)接受Servlet傳遞的內(nèi)容,調(diào)用JavaBean,將內(nèi)容顯示給用戶

控制層(Controller):主要負(fù)責(zé)所有用戶的請(qǐng)求參數(shù),判斷請(qǐng)求參數(shù)是否合法,根據(jù)請(qǐng)求的類型調(diào)用JavaBean,將最終的處理結(jié)果交給顯示層顯示!

模型層(Mode):模型層包括了業(yè)務(wù)層,DAO層。

總結(jié)

(1)ModelI,JSP+JavaBean設(shè)計(jì)模式。

(2)ModelII,MVC設(shè)計(jì)模式。

如果文章有錯(cuò)的地方歡迎指正,大家互相交流。習(xí)慣在微信看技術(shù)文章的同學(xué),可以關(guān)注微信公眾號(hào):Java3y

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/68476.html

相關(guān)文章

  • Java3y文章目錄導(dǎo)航

    摘要:前言由于寫(xiě)的文章已經(jīng)是有點(diǎn)多了,為了自己和大家的檢索方便,于是我就做了這么一個(gè)博客導(dǎo)航。 前言 由于寫(xiě)的文章已經(jīng)是有點(diǎn)多了,為了自己和大家的檢索方便,于是我就做了這么一個(gè)博客導(dǎo)航。 由于更新比較頻繁,因此隔一段時(shí)間才會(huì)更新目錄導(dǎo)航哦~想要獲取最新原創(chuàng)的技術(shù)文章歡迎關(guān)注我的公眾號(hào):Java3y Java3y文章目錄導(dǎo)航 Java基礎(chǔ) 泛型就這么簡(jiǎn)單 注解就這么簡(jiǎn)單 Druid數(shù)據(jù)庫(kù)連接池...

    KevinYan 評(píng)論0 收藏0
  • Java面試前需要了解的東西

    摘要:我在面試前針對(duì)基礎(chǔ)也花了不少的時(shí)間,期間也將自己寫(xiě)過(guò)的博文粗略地刷了一遍,同時(shí)也在網(wǎng)上找了不少比較好的資料部分是沒(méi)看完的。看面試題也是校驗(yàn)自己是否真正理解了這個(gè)知識(shí)點(diǎn),也很有可能會(huì)有新的收獲。 一、前言 只有光頭才能變強(qiáng) 回顧前面: 廣州三本找Java實(shí)習(xí)經(jīng)歷 上一篇寫(xiě)了自己面試的經(jīng)歷和一些在面試的時(shí)候遇到的題目(筆試題和面試題)。 我在面試前針對(duì)Java基礎(chǔ)也花了不少的時(shí)間,期間也將...

    renweihub 評(píng)論0 收藏0
  • 過(guò)濾器監(jiān)聽(tīng)器面試都在這里

    摘要:中的異步處理指的是什么中的異步處理指的是什么答在中引入了一項(xiàng)新的技術(shù)可以讓異步處理請(qǐng)求。開(kāi)啟異步處理代碼開(kāi)啟異步支持啟動(dòng)異步處理的上下文在此處添加異步處理的代碼如果文章有錯(cuò)的地方歡迎指正,大家互相交流。 以下我是歸納的過(guò)濾器監(jiān)聽(tīng)器知識(shí)點(diǎn)圖: showImg(https://segmentfault.com/img/remote/1460000013263166?w=3974&h=187...

    crelaber 評(píng)論0 收藏0
  • HTTP面試都在這里

    摘要:一般由三部組成協(xié)議或稱為服務(wù)方式存有該資源的主機(jī)地址有時(shí)也包括端口號(hào)主機(jī)資源的具體地址。上面的和都是的示例。服務(wù)器應(yīng)答客戶機(jī)向服務(wù)器發(fā)出請(qǐng)求后,服務(wù)器會(huì)客戶機(jī)回送應(yīng)答,,應(yīng)答的第一部分是協(xié)議的版本號(hào)和應(yīng)答狀態(tài)碼。 HTTP常見(jiàn)面試題 Http與Https的區(qū)別: Http與Https的區(qū)別: HTTP 的URL 以http:// 開(kāi)頭,而HTTPS 的URL 以https:// 開(kāi)頭...

    番茄西紅柿 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<