Tips:網絡開發中有兩種開發模式:
C/S模式(Client/Server):如QQ、MSN;
B/S模式(Brower/Server):如網上購物、論壇
靜態請求:通常以.html或.htm爲後綴的,代碼固定;
動態請求:通常以.jsp或.php爲後綴,代碼拼湊而成。
相比較靜態web,動態web可進行數據庫操作,最大特點是交互性
JSP的前身是Servlet(服務器端小程序),servlet可分爲簡單servlet、過濾servlet(過濾器)、監聽servlet(監聽器),servlet具備的很多功能是JSP所不具備的。servlet處理客戶端傳來的HTTP請求,並返回一個響應
Java EE框架主要由容器(如web容器、EJB容器)、組件(如JSP、servlet)和服務(如HTTP、JDBC)三大核心部分組成
整個企業開發分爲3部分,客戶層、中間層(爲客戶訪問提供服務)和企業信息系統層
Java EE最核心的設計模式是MVC(Model-View-Controller),模型層(EJB、JavaBean)、顯示層(JSP)、控制層(servlet),用戶發出請求交由控制層處理,控制層調用模型組件,並通過這些組件進行持久層(數據庫)的訪問,並將所有結果保存在JavaBean(Java類)中,最終由JSP和JavaBean一起完成頁面的顯示
URL(Uniform Resource Locator,統一資源定位符)是網上的標準資源地址
request.getParameter("info")用於服務器端取得客戶端輸入的內容,如info可爲form中文本框的name屬性(parame:屬性)
Ajax局部刷新
DAO(Data Access Object,數據訪問對象)的功能是數據操作
DatabaseConnection:負責數據庫的打開與關閉操作的類;
VO(Bean):由屬性、setter、getter方法組成;
DAO:定義操作的接口,定義一系列數據庫的原子性操作,如增刪改查;
Impl:DAO接口的實現類。
過濾器(Filter)的應用包括編碼過濾和登陸驗證等
<c:forEach>將集合中的元素迭代輸出(類似Iterator接口),
<c:forEach var="每個對象的屬性名" items="集合" varStatus="status(保存相關成員信息)" step="步長"> ---status封裝了當前遍歷的狀態
ex:
<%
String info[]={"qingdao","linyi","shanghai"};
pageContext.setAttribute("ref",info);//ref是info的引用,將數組保存到page頁面中
%>
<c:forEach var="mem" items="${ref}">
${mem};
</c:forEach>
<!--varStatus的用法-->
<c:forEach var="varity" items="${sessionScope.myList}" varStatus="status">
<!--實現斑馬線效果-->
<c:if test="${status.count%2==0}" >
<tr bgcolor="lightyellow">
</c:if>
<c:if test="${status.count%2!=0}" >
<tr>
</c:if>
<td>Elements</td>
</tr>
</c:forEach>
<c:forEach var="varity" items="${sessionScope.myList}" varStatus="status">
${status.first}/${status.last}
當前:${status.current}
</c:forEach>
若表單提交是post方法,則servlet要使用doPost()方法