javaweb期末復(fù)習(xí)要點(diǎn)_第1頁
javaweb期末復(fù)習(xí)要點(diǎn)_第2頁
javaweb期末復(fù)習(xí)要點(diǎn)_第3頁
javaweb期末復(fù)習(xí)要點(diǎn)_第4頁
javaweb期末復(fù)習(xí)要點(diǎn)_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、JavaScript是基于對(duì)象的語言。JavaScript的基本語法: 包含了一些變量及函數(shù)的聲明操作,所有的JavaScript代碼都是在HTML代碼中編寫的,使用 <script>標(biāo)記完成。JavaScript中的所有變量都使用var關(guān)鍵字聲明,變量的類型由賦給的具體內(nèi)容來決定。HTML語句1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111鏈接<A HREF=”鏈接地址”

2、></A>超鏈接表格元素<TABLE>和</TABLE>顯示表格<TR>和</TR>表格的行顯示<TD>和</TD>表格的列顯示表單元素<FORM NAME>=”ACTION=”URL”METHOD=”GET|POST”>和</FORM>顯示表單<INPUT TYPE=”TEXT”>普通輸入文本<INPUT TYPE=”PASSWORD”>密碼輸入框<INPUT TYPE=”CHECKBOOK”>復(fù)選框<INPUT TYPE=”RAD

3、IO”>單選按鈕<INPUT TYPE=”IMAGE”>將圖片設(shè)置為提交按鈕JavaScript中的各個(gè)操作都有相應(yīng)的事件支持,主要圍繞函數(shù)展開,產(chǎn)生事件后可以調(diào)用相應(yīng)函數(shù)進(jìn)行處理,所有事件以 onXxx 命名。JavaScript中程序的三種結(jié)構(gòu):順序結(jié)構(gòu):程序代碼從頭到尾執(zhí)行。分支結(jié)構(gòu):中間加入若干個(gè)判斷條件,根據(jù)判斷條件來決定代碼的執(zhí)行。循環(huán)結(jié)構(gòu):將一段代碼體重復(fù)執(zhí)行。在JSP中的3中Scriptlet代碼:第一種Scriptlet <% %>:可以定義局部變量,編寫語句第二種Scriptlet <%!%>:可以定義全局變量、方法、類。第三種Sc

4、riptlet <%=%>:輸出一個(gè)變量或一個(gè)具體的常量跳轉(zhuǎn)指令使用<jsp:forward>指令,將一個(gè)用戶的請(qǐng)求(request)從一個(gè)頁面?zhèn)鬟f到另一個(gè)頁面,即完成跳轉(zhuǎn)的操作。不傳遞參數(shù):<jsp:forward page=”要包含的文件路徑|<%=表達(dá)式%>”/ >傳遞參數(shù):<jsp:forward page=”要包含的文件路徑|<%=表達(dá)式%>”/ ><jsp: param name =”參數(shù)名稱” value = “參數(shù)內(nèi)容”/></jsp: forward>JSP中的包含語句:一種是靜態(tài)

5、包含,屬于先包含后處理;另一種是動(dòng)態(tài)包含,屬于先處理后包含。使用<jsp:forward>可以執(zhí)行跳轉(zhuǎn)操作,跳轉(zhuǎn)后的地址欄不改變,所以是服務(wù)器端跳轉(zhuǎn),此語句屬于標(biāo)簽指令,標(biāo)簽指令在最后一定要有完結(jié)。JSP內(nèi)置對(duì)象的4中屬性范圍Page:只在一個(gè)頁面中保存屬性,跳轉(zhuǎn)之后無效Repuest:只在一次請(qǐng)求中保存屬性,服務(wù)器跳轉(zhuǎn)后依然有效Session: 在一次會(huì)話范圍中保存,無論何種跳轉(zhuǎn)都可以使用,但新開瀏覽器無法使用。Application: 在整個(gè)服務(wù)器中保存,所有用戶都可以使用。9個(gè)內(nèi)置對(duì)象:pageContext request response session applicat

6、ion config out page exception 幾種重要對(duì)象的功能:pageContext對(duì)象:表示一個(gè)JSP頁面的下文。request對(duì)象:接收客戶端發(fā)送而來的請(qǐng)求信息。Response對(duì)象: 對(duì)客戶端的請(qǐng)求進(jìn)行回應(yīng),將Web服務(wù)器處理后的結(jié)果發(fā)回給客戶端。Session對(duì)象:完成用戶的登錄、注銷等。Application對(duì)象:用來存儲(chǔ)和獲取可以被所有用戶之間進(jìn)行共享的信息Config對(duì)象:取得一些初始化的配置信息。Out對(duì)象:完成頁面的輸出操作,使用println()或print()方法輸出信息。屬性的操作方法:設(shè)置屬性: public void setAttribute(St

7、ring name ,Object value)。取得屬性:public Object getAttribute(String name)。刪除屬性:public removeAttribute(String name)。這些屬性在操作時(shí)所有的屬性名稱都使用String進(jìn)行接收,所有的屬性內(nèi)容使用Object進(jìn)行接收,可以保存任意的對(duì)象,在取得屬性時(shí)要根據(jù)取得的類型進(jìn)行向下轉(zhuǎn)型操作。JavaBean 標(biāo)簽: <jsp:useBean>:<jsp:useBean id=”實(shí)例化對(duì)象名稱scope=“保存范圍”class=“包.類名稱”/> <jsp:setPrope

8、rty>:NO.類型語法格式1自動(dòng)匹配<jsp:setProperty name=”實(shí)例化對(duì)象名稱(id)” Property=”*”/>:2指定屬性<jsp:setProperty name=”實(shí)例化對(duì)象名稱(id)” Property=”屬性名稱”/>:3指定參數(shù)<jsp:setProperty name=”實(shí)例化對(duì)象名稱(id)” Property=”屬性名稱”param=”參數(shù)名稱”/>:4指定內(nèi)容<jsp:setProperty name=”實(shí)例化對(duì)象名稱(id)” Property=”屬性名稱”value=”內(nèi)容”/>: <

9、;jsp:getProperty>:<jsp:getProperty name=”實(shí)例化對(duì)象名稱(id)” Property=”屬性名稱”/>:JavaBean 標(biāo)簽操作的簡(jiǎn)單類的開發(fā)要求:1. 所有的類必須放在一個(gè)包中,在Web中沒有包的類是不存在的。2. 所有的類必須聲明為Public class,這樣才能被外部所訪問。3. 類中所有的屬性都必須封裝,即使用private聲明。4. 封裝的屬性如果需要被外部所操作,則必須編寫對(duì)應(yīng)的setter、getter方法。一個(gè)JavaBean中至少存在一個(gè)無參構(gòu)造方法,此方法為JSP中的標(biāo)簽所使用。Servlet程序是運(yùn)行在服務(wù)器端

10、的一段Java程序,其生命周期將受Web容器的控制。生命周期包括 加載程序、初始化、服務(wù)、銷毀、卸載。Servlet生命周期控制的3個(gè)方法:Init()Service() (doGet()、doPost()Destroy()MAV設(shè)計(jì)模式:強(qiáng)制性地使應(yīng)用程序的輸入、處理和輸出分開。分為3個(gè)核心層: 模型層、顯示層、控制層。顯示層(View):主要負(fù)責(zé)接收Servlet傳遞的內(nèi)容,并且調(diào)用JavaBean,將內(nèi)容顯示給用戶??刂茖?Controller):主要負(fù)責(zé)所有的用戶請(qǐng)求參數(shù),判斷請(qǐng)求參數(shù)是否合法。模型層(Model):完成一個(gè)獨(dú)立的業(yè)務(wù)操作組件,一般以JavaBean或者EJB的形式進(jìn)行

11、定義的。Servlet的特點(diǎn):是一個(gè)供其他Java程序調(diào)用的類,不能獨(dú)立運(yùn)行。它的運(yùn)行完全由Servlet引擎來控制和調(diào)度。Servlet引擎是一種容器程序,負(fù)責(zé)管理和維護(hù)所有Servlet對(duì)象的生命周期。Servlet的加載執(zhí)行流程,以及如何接收客戶端發(fā)送的數(shù)據(jù)和如何將數(shù)據(jù)傳輸?shù)娇蛻舳说染唧w的底層事務(wù),都由Servlet引擎來實(shí)現(xiàn)。Servlet用于讀取Web瀏覽器傳遞給web服務(wù)器的參數(shù)和生成web服務(wù)器返回給web瀏覽器的動(dòng)態(tài)網(wǎng)頁文檔內(nèi)容;也能獲取web瀏覽器發(fā)送的HTTP請(qǐng)求消息中的各個(gè)請(qǐng)求頭和請(qǐng)求行信息。Servlet的運(yùn)行過程:1. 接收到訪問某個(gè)Servlet的HTTP請(qǐng)求之后,

12、Servlet引擎首先檢查是否已經(jīng)安裝并創(chuàng)建了該Servlet的實(shí)例對(duì)象。如果已裝載并創(chuàng)建,Servlet引擎則直接執(zhí)行步驟4,否則,執(zhí)行步驟2.2. 裝載并創(chuàng)建Servlet的一個(gè)實(shí)例對(duì)象。3. 調(diào)用Servlet實(shí)例對(duì)象的init()方法,以便執(zhí)行Servlet的一些初始化工作。4. 創(chuàng)建一個(gè)用于封裝HTTP請(qǐng)求消息的HttpServletRepuest對(duì)象和一個(gè)代表HTTP響應(yīng)消息的HttpServletRepuest對(duì)象,然后調(diào)用Servlet的servive()方法并將請(qǐng)求和響應(yīng)對(duì)象作為參數(shù)傳遞進(jìn)去。5. 在一個(gè)Web應(yīng)用程序被停止或重新啟動(dòng)之前,Servlet引擎將卸載其中運(yùn)行的S

13、ervlet。代碼4 登錄檢查servletpackage com.servlets;import java.io.IOException;import javax.servlet.RequestDispatcher;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.htt

14、p.HttpSession;import com.beans.User;import com.beans.userHandler;public class LoginCheckServlet extends HttpServlet protected void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException doGet(request,response); protected void doGet(HttpServletRequest req

15、uest,HttpServletResponse response) throws ServletException, IOException /得到輸入的用戶名String username = request.getParameter("username");/得到輸入的密碼String password =request.getParameter("password");/封裝成User對(duì)象User user = new User();user.setUsername(username);user.setPassword(password);if(

16、username != null && password != null)/實(shí)例化userHandleruserHandler userhandler = new userHandler();/調(diào)用userhandler的checkLogin方法boolean isSuccess = userhandler.checkLogin(user);userhandler.CloseSql();/根據(jù)返回結(jié)果進(jìn)行視圖控制處理if(isSuccess)/得到session對(duì)象HttpSession session = request.getSession();session.setAtt

17、ribute("username",username);/向index.jsp進(jìn)行跳轉(zhuǎn)(服務(wù)器端跳轉(zhuǎn))RequestDispatcher requestDispatcher =request.getRequestDispatcher("index.jsp");requestDispatcher.forward(request, response);Else /向showerror.jsp進(jìn)行跳轉(zhuǎn)(服務(wù)器端跳轉(zhuǎn))RequestDispatcher requestDispatcher =request.getRequestDispatcher("s

18、howerror.jsp");requestDispatcher.forward(request, response);else/向showerror.jsp進(jìn)行跳轉(zhuǎn)(服務(wù)器端跳轉(zhuǎn))RequestDispatcher requestDispatcher =request.getRequestDispatcher("showerror.jsp");requestDispatcher.forward(request, response); 代碼5 用戶注冊(cè)servletpackage com.servlets;import java.io.IOException;im

19、port java.io.PrintWriter;import java.sql.SQLException;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import com.beans.User;import com.beans.userHandler;public class RegisterServlet

20、 extends HttpServlet protected void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException doGet(request,response); protected void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException request.setCharacterEnc

21、oding("GBK");/得到輸入的所有用戶注冊(cè)信息String username = request.getParameter("username");String password = request.getParameter("password");String realname =request.getParameter("realname");String gender = request.getParameter("gender");String age_str = request

22、.getParameter("age_str");int age = Integer.parseInt(age_str);/封裝成一個(gè)User對(duì)象User user = new User(username, password, realname, gender, age);response.setContentType("textml;charset=gb2312"); PrintWriter out = response.getWriter();if(username != null && password != null)/實(shí)例化us

23、erHandleruserHandler userhandler = new userHandler();/調(diào)用userhandler的addUser方法boolean isSuccess = false;try isSuccess = userhandler.addUser(user); catch (SQLException e) e.printStackTrace();userhandler.CloseSql();if(isSuccess)String contextpath = request.getContextPath();out.println("<SCRIPT

24、language=javascript>alert('注冊(cè)成功!');" +"window.location='"+contextpath+"/login.htm'</script>");else String contextpath = request.getContextPath();out.println("<SCRIPT language=javascript>alert('注冊(cè)失??!');" +"window.location=

25、'"+contextpath+"/register.htm'</script>"); elseresponse.sendRedirect(request.getContextPath()+"/showerror.jsp");第一題.Html登陸界面制作<html><head> <title>登錄界面</title><body><center><h1>登錄操作</h1><hr><form ><t

26、able border=”1”><tr><td colspan=”2”>用戶登錄</td></tr><tr><td>用戶ID:</td><td><input type="text" name="id" ></td></tr><tr><td>密 碼:</td><td><input type="password" name="passwor

27、d"></td></tr><tr><td colsoan=”2”><input type="button" value="登 錄" > <input type="reset" value="重 置"/></td></tr> </table></form></center></body></html>代碼來自書上P118第二題 html字體顯示&l

28、t;html><head> <title>字體顯示</title></head><body><form> <table border="1" cellpadding="0" cellspacing="1"> <tr> <td colspan="6" style="font-size: 45px; padding: 15px 0">字體顯示</td> </tr>

29、 <tr align=center> <td style="font-weight: bold">粗體</td> <td style="font-style: italic">斜體</td> <td style="text-decoration: underline">下劃線</td> <td style="text-decoration: line-through">中劃線</td> <td>9

30、0°</td> <td>H<sub>2</sub>O</td> </tr> </table></form></body></html>自己寫+網(wǎng)上查找的代碼3、 簡(jiǎn)述JSP中任意5個(gè)內(nèi)置對(duì)象的名稱與作用。(15分)答案來自百度百科(背5個(gè)就行了)(1)request對(duì)象客戶端的請(qǐng)求信息被封裝在request對(duì)象中,通過它才能了解到客戶的需求,然后做出響應(yīng)。它是HttpServletRequest類的實(shí)例。(2)response對(duì)象response對(duì)象包含了響應(yīng)客戶請(qǐng)

31、求的有關(guān)信息,但在JSP中很少直接用到它。它是HttpServletResponse類的實(shí)例。(3)session對(duì)象session對(duì)象指的是客戶端與服務(wù)器的一次會(huì)話,從客戶端連到服務(wù)器的一個(gè)WebApplication開始,直到客戶端與服務(wù)器斷開連接為止。它是HttpSession類的實(shí)例。(4)out對(duì)象out對(duì)象是JspWriter類的實(shí)例,是向客戶端輸出內(nèi)容常用的對(duì)象(5)page對(duì)象page對(duì)象就是指向當(dāng)前JSP頁面本身,有點(diǎn)象類中的this指針,它是java.lang.Object類的實(shí)例(6)application對(duì)象application對(duì)象實(shí)現(xiàn)了用戶間數(shù)據(jù)的共享,可存放全局變

32、量。它開始于服務(wù)器的啟動(dòng),直到服務(wù)器的關(guān)閉,在此期間,此對(duì)象將一直存在;這樣在用戶的前后連接或不同用戶之間的連接中,可以對(duì)此對(duì)象的同一屬性進(jìn)行操作;在任何地方對(duì)此對(duì)象屬性的操作,都將影響到其他用戶對(duì)此的訪問。服務(wù)器的啟動(dòng)和關(guān)閉決定了application對(duì)象的生命。它是ServletContext類的實(shí)例。(7)exception對(duì)象exception對(duì)象是一個(gè)例外對(duì)象,當(dāng)一個(gè)頁面在運(yùn)行過程中發(fā)生了例外,就產(chǎn)生這個(gè)對(duì)象。如果一個(gè)JSP頁面要應(yīng)用此對(duì)象,就必須把isErrorPage設(shè)為true,否則無法編譯。他實(shí)際上是java.lang.Throwable的對(duì)象(8)pageContext對(duì)象

33、pageContext對(duì)象提供了對(duì)JSP頁面內(nèi)所有的對(duì)象及名字空間的訪問,也就是說他可以訪問到本頁所在的SESSION,也可以取本頁面所在的application的某一屬性值,他相當(dāng)于頁面中所有功能的集大成者,它的本類名也叫pageContext。(9)config對(duì)象config對(duì)象是在一個(gè)Servlet初始化時(shí),JSP引擎向它傳遞信息用的,此信息包括Servlet初始化時(shí)所要用到的參數(shù)(通過屬性名和屬性值構(gòu)成)以及服務(wù)器的有關(guān)信息(通過傳遞一個(gè)ServletContext對(duì)象)4、簡(jiǎn)述內(nèi)置對(duì)象中的4種屬性范圍及意義。(12分)pageContext:只在一個(gè)頁面中保存屬性,跳轉(zhuǎn)后無效。Re

34、quest:只在一次請(qǐng)求中保存,服務(wù)器跳轉(zhuǎn)后依然有效。Session:在一次會(huì)話范圍中,無論何種跳轉(zhuǎn)都可以使用,但是新開瀏覽器無法使用。Application:在整個(gè)服務(wù)器上保存,所有用戶都可以使用。5、簡(jiǎn)述Servlet程序的處理步驟。(10分)當(dāng)你用JSP或HTML提交表單的時(shí)候(點(diǎn)submit),瀏覽器會(huì)將這個(gè)請(qǐng)求封裝成一個(gè)request,發(fā)送到服務(wù)器端(Tomcat端),服務(wù)器端接收到這個(gè)request請(qǐng)求之后,交由Servlet來處理,將處理后的結(jié)果,封裝成response返還給瀏覽器。 Tomcat根據(jù)WEB-INF下面的web.xml來實(shí)例化Servlet,一般來講,Servle

35、t只被實(shí)例化一次,實(shí)例化之后,多個(gè)線程共享。6、使用MVC的設(shè)計(jì)模式,設(shè)計(jì)一個(gè)用戶注冊(cè)程序,利用JSP,Servlet 和 JavaBean組件進(jìn)行實(shí)現(xiàn)。要求:1、 簡(jiǎn)述MVC的組成,并說明JSP,Servlet 和 JavaBean組件分別可以在MVC架構(gòu)中充當(dāng)什么功能?2、給出JSP,Servlet 和 JavaBean 組件的關(guān)鍵代碼。答:MVC即Model-View-Controller,JSP 負(fù)責(zé)顯示界面 相當(dāng)于MVC中的 View(視圖層),Servlet 負(fù)責(zé)歷程控制 相當(dāng)于MVC中的 Controller(控制層),JavaBean 負(fù)責(zé)功能 相當(dāng)于MVC中的 Model(數(shù)

36、據(jù)層)。用戶注冊(cè):jsp頁面 zhuce.jsp:  <HTML><BODY ><Font size=3> 請(qǐng)注冊(cè): <FORM action="zhuce1.jsp" method=post> <table border=1>   <tr><td><font size=2>用戶名:</font></td>&

37、#160;     <td><Input type="text" name="username"></td>       </tr>  <tr><td><font size=2>密碼:</font></td>      &

38、lt;td><Input type="password" name="password"></td>       </tr>  <tr><td><font size=2>性別:</font></td>      <td><Input type=&qu

39、ot;text" name="sex"></td>       </tr>  <tr><td><font size=2>年齡:</font></td>      <td><Input type="text" name="age"&g

40、t;</td>       </tr>   </table>  <BR><Input type="submit" name="b" value="注冊(cè)"> </FORM>  </Font></BODY></HTML>  zhuce1

41、.jsp: <%page pageEncoding=”gbk”%> <%page import=”java.sql.*”%> <%  String username=request.getParameter("username");/獲取客戶提交的信息String password=request.getParameter("password");/獲取客戶提交的信息String sex=request.getParamete

42、r("sex");      /獲取客戶提交的信息String ages=request.getParameter("age");         int age=0      try            &

43、#160; byte bb=sex.getBytes("ISO-8859-1");             sex=new String(bb);            age=Integer.parseInt(ages);         

44、; catch(Exception e)         if(username.length()=0|password.length()=0)           response.sendRedirect("zhuce.jsp");          /重

45、定向           try  Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");     catch(Exception e)         String insertCondition="INSE

46、RT users VALUES( '"+username+  "', '"+password+"','"+sex+"'',"+age+")"         String str=""       

47、60;  Connection con;      Statement sql;          try  String uri="jdbc:sqlserver:/:1433;DatabaseName=student"         &#

48、160;      con=DriverManager.getConnection(uri,"sa","sa");         sql=con.createStatement();            int m=sql.executeUpdate(insertCondit

49、ion);                   if(m!=0)   str="注冊(cè)成功"                   else   

50、;str="注冊(cè)失敗"                            con.close();              catch(SQLExcept

51、ion e) str=e.toString();           out.print(str); %>用戶注冊(cè)servletpackage com.servlets;import java.io.IOException;import java.io.PrintWriter;import java.sql.SQLException;import javax.servlet.ServletException;import javax.servlet.

52、http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import com.beans.User;import com.beans.userHandler;public class RegisterServlet extends HttpServlet protected void doPost(HttpServletRequest request,HttpServletResponse response) throws Servle

53、tException, IOException doGet(request,response); protected void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException request.setCharacterEncoding("GBK");/得到輸入的所有用戶注冊(cè)信息String username = request.getParameter("username");String password

54、 = request.getParameter("password");String realname =request.getParameter("realname");String gender = request.getParameter("gender");String age_str = request.getParameter("age_str");int age = Integer.parseInt(age_str);/封裝成一個(gè)User對(duì)象User user = new User(username, pass

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論