




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、WEB工程 (JAVA WEB快速入門),內容結構,WEB原理 HTML知識 搭建服務器、 servlet 處理表單 JSP 保持會話 頁面跳轉 共享數(shù)據( Request /session/ application ) JAVAbeans 連接數(shù)據庫,1 WEB 原理 B/S結構,瀏覽器,Browser,SERVER,靜態(tài)網頁,HTTP:/WWW.SOHU.COM,輸入網址,請求,響應,WEB 原理 B/S結構,瀏覽器,Browser,SERVER,動態(tài)網頁,HTTP:/WWW.SOHU.COM,輸入網址,靜態(tài)內容,請求,響應,2 HTML 知識-文檔結構, 主要內容放在這里 ,頭, you
2、rtitle ,2 HTML-常用標簽,文本標簽 創(chuàng)建最大的標題 創(chuàng)建最小的標題 創(chuàng)建黑體字 創(chuàng)建斜體字 創(chuàng)建打字機風格的字體 設置字體大小,從1到7 設置字體的顏色,使用名字或十六進制值 ,鏈接,創(chuàng)建一個超鏈接 創(chuàng)建一個自動發(fā)送電子郵件的鏈接 .,格式排版,創(chuàng)建一個新的段落 將段落按左、中、右對齊 插入一個回車換行符 從兩邊縮進文本 創(chuàng)建一個定義列表 放在每個定義術語詞之前 放在每個定義之前 創(chuàng)建一個標有數(shù)字的列表 放在每個數(shù)字列表項之前,并加上一個數(shù)字 創(chuàng)建一個標有圓點的列表 放在每個圓點列表項之前,并加上一個圓點 一個用來排版大塊HTML段落的標簽,也用于格式化表 ,圖形元素,添加一個圖
3、像 加入一條水平線 ,表格,創(chuàng)建一個表格 開始表格中的每一行 開始一行中的每一個格子 設置表格頭:一個通常使用黑體居中文字的格子 ,表單,創(chuàng)建所有表單 創(chuàng)建一個下拉菜單 設置每個菜單項的內容 創(chuàng)建一個文本框區(qū)域,列的數(shù)目設置寬度,行的數(shù)目設置高度 創(chuàng)建一個復選框,文字在標簽后面 創(chuàng)建一個單選框,文字在標簽后面 創(chuàng)建一個單行文本輸入區(qū)域,size設置以字符計的寬度 創(chuàng)建一個submit(提交)按鈕 創(chuàng)建一個使用圖象的submit(提交)按鈕 創(chuàng)建一個reset(重置)按鈕 ,3 搭建TOMCAT服務器,配置環(huán)境變量tomcat_home 及 java_home到tomcat和java的安裝目錄
4、到tomat的bin 子目錄下,運行startup.bat :8080/ 在tomcat的webapps下創(chuàng)建自己的應用程序 :8080/bbs/hello.html,內容結構,WEB原理 HTML知識 搭建服務器、 servlet 處理表單 JSP 保持會話 頁面跳轉 共享數(shù)據( Request /session/ application ) JAVAbeans 連接數(shù)據庫,4 servlet,純JAVA類 可以響應HTTP請求 生存在“容器”中 有一些方法被容器調用,內容結構,WEB原理 HTML知識 搭建服務器、 servlet
5、 處理表單 JSP 保持會話 頁面跳轉 共享數(shù)據( Request /session/ application ) JAVAbeans 連接數(shù)據庫,5 處理表單,表單頁面: 服務器端: String user=request.getParameter(user); out.println(user);,內容結構,WEB原理 HTML知識 搭建服務器、 servlet 處理表單 JSP 保持會話 頁面跳轉 共享數(shù)據( Request /session/ application ) JAVAbeans 連接數(shù)據庫,6 Java Server Pages,可以嵌入java語言的網頁 擴展名一般為.j
6、sp 是一種特殊的SERVLET 被服務器翻譯成servlet,然后再編譯運行,JSP支持的網頁元素, 腳本 表達式 聲明 指令 動作,JSP內置對象,Out Request Response session application,內容結構,WEB原理 HTML知識 搭建服務器、 servlet 處理表單 JSP 保持會話 頁面跳轉 共享數(shù)據( Request /session/ application ) JAVAbeans 連接數(shù)據庫,7 保持會話-讓服務器記住你,Cookies 服務器生成唯一的ID(cookie)發(fā)到客戶端 Session 服務器生成唯一的ID(session id)
7、發(fā)到客戶端,設置Cookie, index.jsp,表單端, 0) for (int n = 0; n , / ,session, 您好:, index.jsp,內容結構,WEB原理 HTML知識 搭建服務器、 servlet 處理表單 JSP 保持會話 頁面跳轉 共享數(shù)據( Request /session/ application ) JAVAbeans 連接數(shù)據庫,8 頁面跳轉,通過超鏈接,點擊 自動 重定向response.sendRedirect(index.jsp); 請求轉發(fā) RequestDispatcher rd=request.getRequestDispatcher(in
8、dex.jsp); rd.forward(request, response);,9共享數(shù)據,Request / session/ application,10 JAVAbeans,JAVA組件技術 規(guī)范:Set和GET方法, :,-Input.html - Name: password: - Introspection.jsp - ”/ :,11 連接數(shù)據庫,JDBC API是為數(shù)據庫開發(fā)人員提供的一些個可編程的接口。供程序員編程使用的常用的接口有: java.sql.DriverManager :處理驅動器的加載、數(shù)據庫連接的建立。 java.sql.Connection : 處理特定數(shù)據
9、庫的連接。 java.sql.Statement : 處理數(shù)據庫連接中的SQL語句。有2個子接口 java.sql.PreparedStatement :用于處理帶有參數(shù)的SQL語句。 java.sql.CallableStatement : 用于處理數(shù)據庫存儲過程 java.sql.Result : 用于處理數(shù)據庫操作的結果集。,使用JDBC,JDBC基本應用,使用JDBC的第一步是指定數(shù)據庫所需要的特定的JDBC驅動程序。主要有二種方式可以完成此操作。 第一種方式是顯式地裝載JDBC驅動程序,只需要一行代碼,例如: Class.forName(sun.jdbc.odbc.JdbcOdbcD
10、river); 另一種方式是直接調用DriverManager類的registerDriver()方法。例如: DriverManager. registerDriver(new sun.jdbc.odbc.JdbcOdbcDriver();,一、裝載驅動程序,上述代碼會將JDBC-ODBC橋驅動程序裝載到Java運行環(huán)境。具體是:系統(tǒng)調用DriverManager類的registerDriver()方法,該方法生成和管理JDBC驅動程序的實例。若選用的JDBC驅動程序不存在或存放位置不在CLASSPATH內,上述代碼會拋出ClassNotFoundException異常,因此通常要把此句封閉
11、在try/catch塊中。,使用JDBC,JDBC基本應用,一旦裝載了數(shù)據庫驅動程序,第二步是建立到數(shù)據庫的連接。這是通過DriverManager類的getConnection()方法來完成的。例如: Connection conn=DriverManager.getConnection( jdbc:odbc:myodbc, username,password) 在三個參數(shù)中,最重要的是用來指定數(shù)據源的URL。 JDBC數(shù)據源URL JDBC數(shù)據源使用的URL語法的形式為: jdbc: 其中jdbc表示使用的協(xié)議是jdbc, sunprotocol字段表示使用的JDBC驅動程序名, subn
12、ame是根據子協(xié)議而確定的參數(shù)字符串。,二、建立數(shù)據庫連接,使用JDBC,JDBC基本應用,常見的JDBC數(shù)據源URL jdbc:oracle:thin:host:1521:mydb 描述了一個Oracle數(shù)據庫的連接URL。該URL使用的子協(xié)議是oracle,Oracle的JDBC驅動程序有兩種,oci和thin,后面是數(shù)據庫主機名稱、服務器偵聽接口和數(shù)據庫安全標識符SID; jdbc:borland:dslocal:D:testDBemployee.jds描述了一個Borland公司的數(shù)據庫產品JDataStore的數(shù)據源。子協(xié)議是borland,數(shù)據源是一個本地數(shù)據庫,存放在D:test
13、DBemployee.jds ; jdbc:mysql:/www.mycompany.con/db/MyDB描述了一個MySQL數(shù)據源。子協(xié)議是mysql,數(shù)據庫定位在/www.mycompany.con/db/MyDB ; jdbc:odbc:myOdbcDataODBC數(shù)據源,子協(xié)議odbc,ODBC數(shù)據源名為myOdbcData ;,二、建立數(shù)據庫連接,使用JDBC,Statement 如果已經裝載了數(shù)據庫驅動程序并創(chuàng)建了數(shù)據庫連接conn,現(xiàn)在可以向數(shù)據庫服務器發(fā)送SQL語句。這是通過創(chuàng)建Statement對象來完成的。可使用Connection對象的createStatement()
14、方法創(chuàng)建該對象,例如: Statement stmt=conn.createStatement(); PreparedStatement 如果需要向數(shù)據庫服務器傳遞帶參數(shù)的SQL,則應使用PreparedStatement對象,該對象是由Connection對象的repareStatement()方法生成的,例如: String sql= select * from employee where salary?; PreparedStatement stmt= conn.prepareStatement(sql); CallableStatement 如果需要調用數(shù)據庫的存儲過程,則需要創(chuàng)建C
15、allableStatement對象來達到這一目的: String callProc=call myproc; CallableStatement cstmt=conn.prepareCall(callProc);,三、建立Statement對象,使用JDBC,一旦創(chuàng)建了Statement對象,下一步是把SQL發(fā)送到數(shù)據庫。Statement對象有兩個主要的方法用于此目的。使用哪個方法取決于是否需要返回結果。 executeQuery() 對于需要返回結果集的SELECT語句,應當使用executeQuery()方法,該方法只有一個字符串參數(shù),用來存放SELECT語句,查詢成功則以Result
16、Set對象的形式返回查詢結果。例如:String sql=select * from students;ResultSet rs=stmt.executeQuery(sql); executeUpdate()方法 如果調用INSERT、UPDATE、DELETE不需返回查詢結果的SQL語句,應采用executeUpdate()方法。 executeUpdate()方法也只接受String類型的SQL語句作參數(shù),返回類型為int。如果返回值為0則表示SQL語句不返回任何數(shù)據,否則返回數(shù)據庫中受到INSERT、UPDATE、DELETE語句影響的數(shù)據行數(shù)。例如:String sql=DELETE
17、FROM STUDENT WHERE SCORE =60;int ret=stmt.executeUpdate(sql);,四、發(fā)送SQL語句,使用JDBC,盡管不是必須的,但及時關閉到數(shù)據庫的連接是一個很好的習慣。這樣就確保及時釋放用于連接數(shù)據庫的相應的資源。及時將寶貴的數(shù)據庫連接歸還給DBMS,可提高數(shù)據庫并發(fā)處理能力。 JDBC的Statement和Connection對象都有一個close()方法用于此目的。例如:stmt.close(); conn.close(),五、關閉數(shù)據連接,使用JDBC,JDBC基本應用,當發(fā)送的SQL語句SELECT語句時,返回的是ResultSet對象表
18、示的結果集,它包含了返回數(shù)據的行和列。,六、檢索數(shù)據,使用JDBC,六、檢索數(shù)據,遍歷ResultSet對象 ResultSet對象提供了可以逐行移動的游標。最初,游標位于數(shù)據集的第一行的前面,并且可以通過使用next()方法每次向前移動一行。next()方法的返回類型boolean,表示游標指向一行數(shù)據。 隨著游標的移動,可以通過getXXX方法獲取當前行中各數(shù)據列中的數(shù)據。根據列的數(shù)據類型,采用不同的獲取方法。例如getString()、getDate()、getInt()等。這些方法的參數(shù)有一個,可以是表示列名的String類型,也可以是相應的列號的int類型。需要注意的是列名是大小寫敏感的,列的序號是從1開始的。,使用JDBC,常用while或for循環(huán)遍歷ResultSet對象,而do循環(huán)不太合適: String sql
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 教育與科技的協(xié)同發(fā)展助力學生成長
- 在線直播教學中學生參與度的提升方法研究
- 中小學教輔材料征訂管理制度
- 以創(chuàng)新驅動未來-智能型學習工具如教育機器人的發(fā)展策略研究
- 技術助力辦公效率探討使用在線教育平臺的實踐和成效
- 全球鈾礦資源分布與核能產業(yè)產業(yè)鏈整合與風險研究報告
- 公交優(yōu)先戰(zhàn)略2025年城市交通擁堵治理的公共交通信息化建設報告
- Chitosan-Cy7-MW-10000-生命科學試劑-MCE
- 溫州醫(yī)科大學仁濟學院《數(shù)字邏輯電路》2023-2024學年第一學期期末試卷
- 六盤水職業(yè)技術學院《BM技術應用》2023-2024學年第一學期期末試卷
- 細胞治療GMP質量體系設計
- 2024中國城市道路交叉口效能報告
- 2024工業(yè)產品表面缺陷自動檢測系統(tǒng)技術要求
- RB/T 177-2023溫室氣體審定與核查機構要求
- 廣西南寧市第三十五中學2024-2025學年七年級上學期開學分班考試語文試題(原卷版)
- 自來水有限公司2023-2024年度小口徑水表(新裝)采購項目招標文件
- 生產與運作管理第5版配套教材電子課件(完整版)
- 成人鼻腸管的留置與維護(2021團體標準解讀)-20221004172843
- 農產品區(qū)域公用品牌 辛集黃冠梨生產技術規(guī)程
- 2024-2025學年第一學期部編版語文八年級教學計劃(含教學進度表)
- 2024-2030年中國割草機行業(yè)發(fā)展前景預測及投資戰(zhàn)略研究報告
評論
0/150
提交評論