JavaWeb(JSP/Servlet/上傳/下載/分頁/MVC/三層架構/Ajax)

1Jsp:動態網頁css

靜態、動態html

1.不用 和 是否有「動感」混爲一談java

2.是否 隨着 時間、地點、用戶操做 的改變而改變web

動態網頁 須要使用到 服務器腳本語言(Jsp)windows

2架構api

CS:Client Server(客戶端 服務端)瀏覽器

CS:不足:tomcat

a.若是軟件升級,那麼所有軟件都須要升級服務器

b.維護麻煩:須要維護每一臺 客戶端軟件session

c.每一客戶端 都須要安裝 客戶端軟件

 

BS:Broswer Server(瀏覽器 服務端)

客戶端能夠經過 瀏覽器直接訪問服務端

注意:bs和cs各有優點

3.tomcat解壓後目錄:

bin:可執行文件(startup.bat shutdown.bat)

conf:配置文件(server.xml)

lib:tomcat以來的jar文件

log:日誌文件(記錄出錯信息)

temp:臨時文件

webapp:可執行的項目(將咱們開發的項目 放入該目錄)

work:存放由jsp翻譯成的java,以及編輯成的class文件(jsp->java->class)

4.配置tomcat

a.配置jdk(必須配置JAVA_HOME)

java_home classPath path

b.配置catalina_home

 

雙擊bin/startup.bat啓動tomcat,

常見錯誤:可能與其餘服務的端口號衝突

tomcat端口號默認8080(這個端口較爲常見,容易衝突),建議修改此端口

修改端口號-》conf/server.xml文件,第70行左右

5.訪問tomcat

咱們的項目都存放在webapp文件夾中,打開localhost:8080默認訪問的是ROOT文件夾,若是要訪問那個文件,就加一個文件夾名.

200:一切正常

300/301:頁面重定向(跳轉)

404:資源不存在

403.權限不足(若是訪問a目錄,可是a目錄設置 不可見)

500:服務器內部錯誤(代碼寫錯)

其餘編碼:積累

 

 

 1.使用myeclipse建立tomcat項目

打開myeclipse後須要關聯tomcat,windows-》preferences-》server-》tomcat 8x,JRE(jdk包含jre);而且面板裏面配置。

2.在eclipse中建立的web項目:

瀏覽器能夠直接訪問webcontent中的文件,例如http://localhost:8080/MyJspProject/

其中的index1.jsp就在WebContent目錄中:

可是WEB—INF中的文件 沒法經過客戶端(瀏覽器)直接訪問,只能經過請求轉發來訪問

注意:eclipce建立的目錄結構中WebContent映射爲tomcat目錄結構的http://localhost:8080

 

注意:並非任何的跳轉都能訪問WEB-INF,緣由是 跳轉有兩種方式1:請求轉發(y)、重定向(f)

 

3.配置tomcat運行時環境

jsp<-->Servlet

a.將tomcat/lib中的servlet-api.jar加入到項目的構建路徑

b.右鍵項目-->Build Path  -->Add library  -->Server Runtime

 

4.部署tomcat

在servlet面板 新建一個tomcat實例 ,再在該實例中部署項目(右鍵  ->add)以後運行

注意:通常建議將eclipse中的tomcat與本地tomcat的信息保持一致,將eclipse中的tomcat設置爲託管模式:【第一次】建立tomcat實例後雙擊該實例,選擇Server Localtion的第二項

 

5.統一字符集編碼

a.編碼分類

設置.jsp文件的編碼(.jsp文件中的pageEncoding屬性):jsp-->java

設置瀏覽器讀取jsp文件的編碼(jsp文件中content屬性)

通常將上訴設置成一致的編碼,推薦使用utf-8

文本編碼:

         i.將整個eclipse中的文件統一設置(推薦)

         ii.設置某一項目

          iii.設置單獨文件

 

6.jsp的頁面元素:

a.腳本Scriptlet

    i.<%     局部變量/java代碼%>

   ii.<%!   全局變量 %>

   iii.<%=輸出表達式%>

通常而言,修改web.xml、配置文件、java  須要重啓tomcat

可是若是修改Jsp\html\css\js,不須要重啓

注意,out.println()不能回車;要想回車:「<br/>」,即out.print()  <%= %>能夠直接解析HTML代碼

 

b.指令

page指令

<%page .....%>

page指令的屬性:

language:jsp頁面使用的腳本語言

import:導入類

pageEncoding:jsp

 

 

 

 

java註釋//        /**/

jsp註釋<%------%>

7.JSP九大內置對象(自帶的,不須要new,也能使用的對象)

out:輸出對象,向客戶端輸出內容

request:請求對象:儲存「客戶端向服務端發送的請求信息」

request對象的經常使用方法:

String getParameter(String name):根據請求的字段名key(input標籤的name屬性),返回字段值value(input標籤的value屬性值)

String [] getParameterValues(String name):根據請求的字段名key,返回多個字段值value   (checkbox)

void setCharacterEncoding("編碼格式utf-8"):設置請求編碼    (tomcat7之前默認iso-8859-1,tomcat8之後改成utf-8)

getRequestDispatcher("b.jsp").forward(request,response):請求轉發的方式跳轉頁面A    ----->B

ServletContext getServerContext():獲取項目的ServletContext對象

示例:

註冊 展現

 

 

response

pageContext

session

application

config

page

exception

相關文章
相關標籤/搜索