性能比較html |
LAMP前端 |
JavaEEjava |
ASP.NETweb |
運行速度數據庫 |
較快瀏覽器 |
快tomcat |
通常安全 |
開發速度服務器 |
很是快架構 |
慢 |
通常 |
運行損耗 |
通常 |
較小 |
較大 |
難易程度 |
簡單 |
難 |
簡單 |
運行平臺 |
Linux/Unix/Windows |
絕大多數平臺 |
僅Windows平臺 |
優勢:響應速度快;個性化定製;事務處理能力強,減輕服務器壓力;安全性高。
缺點:C端維護工做量大;不利於企業快速部署應用。
優勢:分佈廣,只要有互聯網的瀏覽器便可。部署靈活;維護方便。跨平臺。
企業內部操做數據採用C/S架構:外部用戶不直接訪問數據庫服務器,保證企業數據庫的相對安全。企業內部用戶的交互性較強,數據操做響應速度較快。
企業外部採用B/S架構:企業外部用戶修改和維護數據時,速度較慢,較煩瑣,數據的動態交互性不強。適合簡單數據查詢和確認。
常見web服務器分紅三類:不帶應用程序的服務器(存放html文件等)、帶應用程序的服務器(例如能夠存放JSP文件)、帶應用程序和數據庫的服務器(例如JSP+數據庫)。
B/S結構採用請求/響應模式進行交互。
HTTP規範1.0和1.1定義了HTTP消息格式。HTTP報文由從客戶機到服務器的請求和從服務器到客戶機的相應構成,因此HTTP消息分爲請求消息和響應消息兩類。
HTTP-Version Status-Code Reason-Phrase CRLF
其中,HTTP-Version表示服務器HTTP協議的版本;Status-Code表示服務器發回的響應狀態代碼;Reason-Phrase表示狀態代碼的文本描述。狀態代碼由三位數字組成,第一個數字定義了響應的類別,且有五種可能取值。
Uniform resource Locator,統一資源定位符
格式:
http://<IP地址>:[端口號]/路徑/[?<查詢信息>]
例如:
http://www.etc.com/book/index.html
http:超文本傳輸協議。FTP,telnet
www:表明一臺web服務器
etc.com:服務器域名
book:站點上的目錄
index.html:book文件夾中的一個HTML文件,即網頁。
參考eclipse安裝文檔
https://wiki.eclipse.org/Eclipse/Installation#Install_a_JVM
配套參考表
Eclipse 4.8 (Photon) Java8
Eclipse 4.7 (Oxygen) Java8
Eclipse 4.6 (Neon) Java8
Eclipse 4.5 (Mars) Java7
Eclipse 4.4 (Luna) Java7
Eclipse 4.3 (Kepler) Java6
一般,在軟件項目中,須要調整集成開發環境程序編譯的JDK版本、JRE版本、以及tomcat使用的JRE版本。保持三個版本一致。
添加系統變量,名稱爲CATALINA_HOME,設置值爲Tomcat的安裝目錄。
在IE地址欄中輸入http://localhost:端口號。
目錄 |
說明 |
/bin |
存放各類平臺下用於啓動和中止Tomcat的腳本文件 |
/conf |
存放Tomcat服務器的各類配置文件 |
/lib |
存放Tomcat服務器所需的各類JAR文件 |
/logs |
存放Tomcat的日誌文件 |
/temp |
Tomcat運行時用於存放臨時文件 |
/webapps |
當發佈Web應用時,默認狀況下會將Web應用的文件存放於此目錄中 |
/work |
Tomcat把由JSP生成的Servlet放於此目錄下 |
經過配置tomcat目錄下conf中的server.xml文件修改Tomcat端口號
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
安裝tomcat,啓動和中止tomcat,修改tomcat端口號。並測試。
手動建立和部署web項目
一、在開發環境中建立web項目
在web-inf/web.xml中配置默認訪問啓始頁面。
二、發佈爲war文件,拷貝到Tomcat 7.0\webapps目錄下,啓動tomcat。觀察webapps目錄,能夠看到war自動生成web應用程序。在ie中訪問項目。
三、在服務器端web項目的目錄結構:
目錄 |
說明 |
/ |
Web應用的根目錄,該目錄下全部文件在客戶端均可以訪問(JSP、HTML等) |
/WEB-INF |
存放應用使用的各類資源,該目錄及其子目錄對客戶端都是不能夠訪問 |
/WEB-INF/classes |
存放Web項目的全部的class文件 |
/Web-INF/lib |
存放Web應用使用的JAR文件 |
一、手動建立一個Web項目,實現項目發佈,並能經過瀏覽器輸入網址訪問。
二、在myeclipse中建立一個項目導出爲war文件,部署到服務器中並訪問。
進入:windwos->prefereces->myeclipse->servers->tomcat7.x
啓用tomcat7服務器,關聯JDK。
關閉內置tomcat服務器。
注意:設置只針對工做空間有效
在myeclipse中建立項目,在myeclipse中部署項目,在myeclipse中啓動服務器,在ie瀏覽器中訪問項目。
JSP:Java Server Pages。在HTML中嵌入Java腳本代碼。
例如:
在ie地址欄輸入http://localhost:8080/chapter01/index.jsp
運行原理
經過設置內部的多個屬性定義整個頁面的屬性。
<%@ page 屬性1="屬性值" 屬性2="屬性值1,屬性值2"… 屬性n="屬性值n"%>
屬性 | 描述 | 默認值 |
language | 指定JSP頁面使用的腳本語言 | java |
import | 經過該屬性來引用腳本語言中使用到的類文件 | 無 |
contentType | 用來指定JSP頁面所採用的編碼方式 | text/html,ISO-8859-1 |
表達式:顯示數據,系統將其做爲一個值來進行計算和顯示。(不能以;結尾)
需求描述:編寫JSP頁面,計算1—100之間的全部素數之和
提示:一、素數——在一個大於1的天然數中,除了1和此整數自身外,不能被其餘天然數整除的數。二、使用out內置對象輸出信息。
在編寫JSP頁面程序時候,有時須要爲Java腳本定義成員變量和方法,這時就須要使用JSP聲明來實現。
聲明語法格式:
<%! Declaration;[ Declaration;]…%>
示例:假如如下代碼須要在頁面中屢次使用,如何處理?
<% SimpleDateFormat formater = new SimpleDateFormat("yyyy年 MM月dd日"); String strCurrentTime = formater.format(new Date()); %>
使用聲明
注意:HTML註釋在JSP文件被編譯後保留,JSP註釋則被丟棄。重要信息的註釋不要使用HTML註釋。
需求描述:
編寫JSP頁面,計算2000—3000年中存在幾個閏年。
實現思路:
1. 聲明方法boolean leapYear(int year),用於判斷是不是閏年
2. 聲明一個變量count ,用於統計閏年的個數
3. 設置循環,條件是從2000至3000年
4. 在循環內調用boolean leapYear(int year),根據返回結果,改變count的變量值
提示信息:
閏年的判斷條件:可以被4整除而不能被100整除,或者可以被400整除。
若是對JSP文件進行了修改,Web容器會從新對JSP文件進行翻譯和編譯。
若是服務器沒法啓動,須要修改端口號。
確認項目已經部署到tomcat服務器上。
404錯誤,訪問了不可訪問的url資源。
例如把文件建立到web-inf中,致使404錯誤。
500錯誤。
按照java程序調試方式排錯:閱讀代碼邏輯、輸出數據、debug。
新聞主題表:topics |
|||
字段 |
數據類型 |
是否爲空 |
備註 |
tid |
int |
否 |
新聞主題編號,主鍵,自增 |
tname |
char(50) |
否 |
新聞主題,非空,惟一約束 |
新聞表:news |
|||
字段 |
數據類型 |
是否爲空 |
備註 |
nid |
int |
否 |
新聞編號,主鍵,自增 |
ntid |
int |
否 |
新聞主題編號,外鍵 |
ntitle |
char(100) |
否 |
新聞標題 |
nauthor |
char(50) |
否 |
做者 |
ncreatedate |
datetime |
是 |
發佈日期,默認當前時間 |
npicpath |
char(200) |
是 |
圖片路徑 |
ncontent |
text |
否 |
新聞內容 |
nmodifydate |
datetime |
是 |
編輯日期 |
nsummary |
char(255) |
否 |
新聞概要 |
新聞評論表:comments |
|||
字段 |
數據類型 |
是否爲空 |
備註 |
cid |
int |
否 |
評論編號,主鍵,自增 |
cnid |
int |
否 |
新聞編號,外鍵 |
ccontent |
text |
否 |
評論內容 |
cdate |
datetime |
否 |
評論日期,默認當前時間 |
cip |
char(100) |
是 |
評論人IP地址 |
cauthor |
char(100) |
是 |
評論做者 |
系統用戶表:users |
|||
字段 |
數據類型 |
是否爲空 |
備註 |
uid |
int |
否 |
用戶編號,主鍵,自增 |
uname |
char(20) |
否 |
用戶名,非空,惟一約束 |
upwd |
char(20) |
否 |
用戶密碼,非空 |