




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第六章一一JSP中數(shù)據(jù)庫的使用、教學內(nèi)容JDBC基礎(chǔ)連接DB的常用方式MYSQL記錄的查詢記錄的添加記錄的更新與刪除、教學目標理解JSP內(nèi)置對象;熟練掌握request對象、response對象、session對象、application對象等JSP常用內(nèi)置對象。三、 教學重點及難點重點:request、response、session、application的用法;難點:session、application的用法。四、教學方式與方法演示講解法,任務驅(qū)動法,案例教學法,問題探究法,與多媒體教學演示相結(jié)合五、 實施教學第一部分:新授課一、 JDBC基礎(chǔ)1?什么是JDBC?JavaDataBaseConnectivityjava程序連接和存取數(shù)據(jù)庫的應用程序接口(API)。由一群類和接口組成,是Java核心API的一部分??梢允褂脴藴实腟QL語句。作用:通過連接器與數(shù)據(jù)庫建立連接,調(diào)用JDBCAPI發(fā)送SQL語句,處理數(shù)據(jù)庫返回結(jié)果。使用JDBC可以使程序開發(fā)人員建立一個與數(shù)據(jù)庫和平臺無關(guān)的編程接口來建立數(shù)據(jù)庫應用程序。JDBC是Java實現(xiàn)跨平臺數(shù)據(jù)庫訪問的基礎(chǔ),支持數(shù)據(jù)庫的兩層、三層訪問模型,所以它既實用又高效。JDBC結(jié)構(gòu)3JDBC驅(qū)動程序的四種類型:(1) 基于本地API,部分用Java來編寫的驅(qū)動程序此類驅(qū)動程序是把客戶機API上的JDBC調(diào)用轉(zhuǎn)換為DBMS(DatabaseManagementSystem,數(shù)據(jù)庫管理系統(tǒng))的調(diào)用,如Oracle、DB2等。它像JDBC-ODBC橋驅(qū)動程序一樣,也要求將某些二進制代碼加載到每臺客戶機上。(2) 本地協(xié)議純Java驅(qū)動程序這種類型的驅(qū)動程序?qū)DBC調(diào)用直接轉(zhuǎn)換為DBMS所使用的網(wǎng)絡協(xié)議。這將允許從客戶機上直接調(diào)用DBMS服務器,是Intranet訪問的一個很實用的解決方法。(3)JDBC-ODBC橋加載ODBC驅(qū)動程序(4)JDBC網(wǎng)絡純Java驅(qū)動程序二、 連接DB的常用方式1.JDBC-ODBC橋加載ODBC驅(qū)動程序: JDBC-ODBC橋利用ODBC驅(qū)動程序提供JDBC訪問。注意:必須將ODBC二進制代碼(在許多情況下還包括數(shù)據(jù)庫客戶機的代碼)加載到使用該驅(qū)動程序的每臺客戶機上,因此它適用于企業(yè)內(nèi)部網(wǎng)或者是用Java編寫的三層結(jié)構(gòu)的應用程序服務器代碼。使用JDBC-ODBC橋接器訪問數(shù)據(jù)庫的3個步驟:⑴建立JDBC-ODBC橋接器;StringdirverName=“sun.jdbc.odbc.JdbcOdbcDriver”;try{Class.forName(driverName);}catch(ClassNotFoundExceptione){}(2)創(chuàng)建ODBC數(shù)據(jù)源;⑶和ODBC數(shù)據(jù)源建立連接;StringconURL=ujdbc:odbc:<^據(jù)源標記>”try{Connectionconn=DriverManager.getConnection(conURL,userName,userPass);}catch(SQLExceptione){}2.JDBC網(wǎng)絡純Java驅(qū)動程序此驅(qū)動程序?qū)DBC轉(zhuǎn)換為與DBMS無關(guān)的網(wǎng)絡協(xié)議,之后此網(wǎng)絡協(xié)議又被某個服務器轉(zhuǎn)換為一種DBMS協(xié)議。使用純JAVA數(shù)據(jù)庫驅(qū)動方式訪問數(shù)據(jù)庫的2個步驟:加載純Java數(shù)據(jù)庫驅(qū)動程序;StringdirverName=“com.mysql.jdbc.Driver”;try{ Class.forName(driverName);}catch(ClassNotFoundExceptione){}和指定的數(shù)據(jù)庫建立連接;StringconURL=“jdbc:mysql://:3306/DatabaseName”try{Connectionconn=DriverManager.getConnection(conURL,userName,userPass);}catch(SQLExceptione){}三、 MYSQL安裝MySQL5.12?為MySQL安裝前端工具Navicat83?安裝JDBC驅(qū)動:把mysql-connector-java-5?1?7-bin?拷貝到\WEB-INF\lib下四、 記錄的查詢與數(shù)據(jù)庫的連接一旦建立,就可用來向它所涉及的數(shù)據(jù)庫傳送SQL語句。Statement對象用于將SQL語句發(fā)送到數(shù)據(jù)庫中。JDBC提供了三種Statement對象:Statement、PreparedStatement、CallableStatement1?Statement作用:Statement對象用于發(fā)送簡單的SQL語句。創(chuàng)建:Statementstmt=conn.createStatement();執(zhí)行數(shù)據(jù)庫操作:>使用Statement對象的executeQuery()方法執(zhí)行査詢操作;>使用Statement對象的executeUpdate()方法執(zhí)行插入、修改和刪除操作及數(shù)據(jù)定義語言語句,將SQL語句作為提供給Statement對象的方法。eg:ResultSetrec=stmt?ExecuteQuery("SELECT*FROMstudent");2?PreparedStatement作用:該對象包含已編譯過的SQL語句,用于發(fā)送帶有一個或多個輸入?yún)?shù)的SQL語句。優(yōu)點:由于PreparedStatement對象已預編譯過,所以其執(zhí)行效率比Statement對象的執(zhí)行效率更高。創(chuàng)建:Stringsql=“select*fromstuwhereage>?”);PreparedStatementps=conn.prepareStatement(sql);該語句為每個輸入?yún)?shù)保留一個問號“?作”為占位符。每個問號的值必須在該語句執(zhí)行之前被設置。PreparedStatement擁有一組方法,用于設置輸入?yún)?shù)的值。執(zhí)行語句時,這些輸入?yún)?shù)將被送到數(shù)據(jù)庫中。執(zhí)行數(shù)據(jù)庫操作具體過程:創(chuàng)建PreparedStatement對象傳遞輸入?yún)?shù),注意輸入?yún)?shù)中數(shù)據(jù)類型的一致性執(zhí)行查詢、插入、更新或刪除操作3?ResultSet(1)作用:ResultSet(結(jié)果集)對象包含符合SQL語句中條件的所有行集合,它通過一套get方法(這些get方法可以訪問當前行中的不同列)提供了對這些行中數(shù)據(jù)的訪問。結(jié)果集一般是一個表,其中有查詢所返回的列標題及相應的值。(2)結(jié)果集類型:TYPE_FORWORD_ONLY:結(jié)果集為只讀類型,并且讀取順序從頭到尾讀取記錄,只能讀一次。TYPE_SCROLL_SENSITIVE:在他人同時對數(shù)據(jù)庫操作時,會影響結(jié)果集的紀錄。TYPE_SCROLL_INSENSITIVE:在他人同時對數(shù)據(jù)庫操作時,不會影響結(jié)果集的紀錄。Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);(3)創(chuàng)建:ResultSetrs=stmt.executeQuery("select*fromstu");(4)主要方法:a&soZ“他伽°:絕對定位到指定記錄。/irs/0:當前記錄指針移動到第一行。 beforeFirst()fast().?當前記錄指針移動到最后移行。 afterLast()-“ext。:把當前記錄指針下移一行。當前行有效返回加,否則返回false,previous。:把當前記錄指針上移一行。當前行有效返回he,否則返回false. close()getBoolean(),getByte(),getString(),getInt(),getShort(),getLong(),getDouble(),getFloat(),getDate()-getRow():返回當前記錄指針所在的行號。行號從開始,若無記錄則返廚。isFirst(),isLast()fisBeforeFirst(),isAfiterLast()五、 記錄的添加要求:創(chuàng)建一個簡易的商品管理后臺系統(tǒng),其中商品信息存放在數(shù)據(jù)庫表中。商品信息至少包含編碼、名稱、生產(chǎn)地生產(chǎn)時間、價格等信息。設計流程:設計原型、建立DB、編碼、測試1?建立DB及相關(guān)表:建立DB:Warehouse,建立表:product設計頁面:login.jsp,confirm.jsp,left.jsp,manage.jsp,selectProduct.jsp,addProduct.jsp,updateProduct.jsp,deleteProduct.jsp3?査詢操作:順序査詢、隨機査詢、條件査詢、模糊査詢、排序査詢4?添加操作5?更新操作6?刪除操作7?在Tag文件中執(zhí)行數(shù)據(jù)庫操作六、 網(wǎng)上投票系統(tǒng)的實現(xiàn)第二部分:概括和總結(jié)重點:JDBC的基本概念,連接DB的兩種常用方式,記錄的査詢、添加、更新與刪除難點:JDBC的基本概念,連接DB的兩種常用方式,記錄的査詢與添加第三部分:練習舉例:針對重點和難點提問第四部分:布置作業(yè)第五部分:熟悉教材代碼://login.jsp<%@pagecontentType="text/html;charset=gb2312"%>vhtml>vbody>^迎登錄商品管理后臺系統(tǒng):<formaction="confirm.jsp"method="post"><tablewidth="80%"border="0"align="center"><tralign="center"> <tdcolspan="2">登錄</td> </tr><tr> <tdalign="right">用戶名:v/td> vtdxinputtype="text"name="username">v/td></tr><tr> <tdalign="right">密碼:</td> vtdxinputtype="text"name="password">v/td></tr><tr>vtdcolspan="2"align="center">vinputtype="submit"name="Submit"value—提交"〉v/td>v/tr>v/table>v/form>v/body>v/html>//confirm.jspv%@pagecontentType="text/html;charset=gb2312"import="java.sql.*"%>vhtml>vbody>v%Stringusername=request.getParameter("username");Stringpassword=request.getParameter("password");booleansuccess=false;if(username!=null&&password!=null){//連接數(shù)據(jù)庫執(zhí)行查詢操作StringdriverName="com.mysql.jdbc.Driver";try{ Class.forName(driverName);}catch(ClassNotFoundExceptione){}StringconURL="jdbc:mysql://localhost:3306/warehouse";try{Connectionconn=DriverManager.getConnection(conURL,"root","root");Statementstmt=conn.createStatement();Stringsql="select*fromuserwhereusername='"+username+"'andpassword='"+password+"'";ResultSetrs=stmt.executeQuery(sql);if(rs.next()){ success=true; }}catch(SQLExceptione){e.printStackTrace();}}if(success){%>vjsp:forward page="manage.jsp"> vjsp:param name="username"value="v%=username%>"/>v/jsp:forward>v%}else{response.sendRedirect("login.jsp");}%>v/body>v/html>//left.jspv%@pagecontentType="text/html;charset=gb2312"language="java"import="java.sql.*"%>vhtml>vbody>vtablewidth="100%"border="0">vtr>vtdcolspan="2">vimgsrc="images/cxrecord.jpg"width="161"height="22">v/td>vtdwidth="79%"> v/td>v/tr>vtr>vtdwidth="5%"> v/td>vtdwidth="16%">vimgsrc="images/ptcx.jpg"width="161"height="22"border="0"usemap="#Map">v/td>vtdrowspan="9"> v/td>v/tr>vtr>vtd> v/td>vtd>vimgsrc="images/sicx.jpg"width="161"height="22"border="0"usemap="#Map2">v/td>v/tr>vtr>vtd> v/td>vtd>vimgsrc="images/tjcx.jpg"width="161"height="22"border="0"usemap="#Map3">v/td>v/tr>vtr>vtd> v/td>vtd>vimgsrc="images/mhcx.jpg"width="161"height="22"border="0"usemap="#Map4">v/td>v/tr>vtr>vtd> v/td>vtd>vimgsrc="images/pxcx.jpg"width="161"height="22"border="0"usemap="#Map5">v/td>v/tr>vtr>vtdcolspan="2">vimgsrc="images/tjrecord.jpg"width="161"height="22"border="0"usemap="#Map6">v/td>v/tr>vtr>vtdcolspan="2">vimgsrc="images/gxrecord.jpg"width="161"height="22"border="0"usemap="#Map7">v/td>v/tr>vtr>vtdcolspan="2">vimgsrc="images/screcord.jpg"width="161"height="22"border="0"usemap="#Map8">v/td>v/tr>vtr>vtdcolspan="2"> v/td>v/tr>v/table>vmapname="Map">vareashape="rect"coords="15,3,139,20"href="ptselectProduct.jsp"target="mainFrame">v/map>vmapname="Map2">vareashape="rect"coords="20,3,134,19"href="sjselectProduct.jsp"target="mainFrame">v/map>vmapname="Map3">vareashape="rect"coords="21,2,134,20"href="tjselectProduct.jsp"target="mainFrame">v/map>vmapname="Map4">vareashape="rect"coords="24,4,138,19"href="mhselectProduct.jsp"target="mainFrame">v/map>vmapname="Map5">vareashape="rect"coords="27,4,142,21"href="pxselectProduct.jsp"target="mainFrame">v/map>vmapname="Map6">vareashape="rect"coords="36,5,123,19"href="addProduct.jsp"target="mainFrame">vareashape="rect"coords="123,-4,125,5"href="#">v/map>vmapname="Map7">vareashape="rect"coords="36,2,124,20"href="updateProduct.jsp"target="mainFrame">v/map><mapname="Map8"><areashape="rect"coords="34,4,130,18"href="deleteProduct.jsp"target="mainFrame"></map></body></html>//manage.jsp<%@pagecontentType="text/html;charset=gb2312"language="java"import="java.sql.*"%><html><body>v%Stringusername=request.getParameter("username"); out.println(”歡迎"+username+"登錄系統(tǒng)”);%><tablewidth="100%"border="0"><tr><tdwidth="200"height="600"valign="top"><iframename="leftFrame"align="middle"width="200"height="540"scrolling="no"src="left.jsp"></iframe></td><tdvalign="top"><iframename="mainFrame"scrolling="auto"height="540" width="950"src="ptselectProduct.jsp"></iframe></td></tr></table></body></html>//pxselectProduct.jsp<%@pagecontentType="text/html;charset=gb2312"language="java"import="java.sql.*"%><html><body>根據(jù)條件查詢產(chǎn)品信息:<formaction=""method="post"><tablewidth="100%"border="0"><tr><tdalign="center">出廠價格:vinputtype="radio"name="pprice"value="asc">升序vinputtype="radio"name="pprice"value="desc">降序v/td>vtdalign="center">生產(chǎn)時間:vinputtype="radio"name="pdate"value="asc">升序vinputtype="radio"name="pdate"value="desc">|降序v/td>vtd>vinputtype="submit"name="Submit"value="提交"〉v/td>v/tr>v/table>v/form>v%StringdriverName="com.mysql.jdbc.Driver";try{ Class.forName(driverName);}catch(ClassNotFoundExceptione){}StringconURL="jdbc:mysql://localhost:3306/warehouse";Connectionconn=null;try{conn=DriverManager.getConnection(conURL,"root","root");Statement stmt =conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);Stringsql="select*fromproduct"; Stringcondition=null;Stringpprice=request.getParameter("pprice"); Stringpdate=request.getParameter("pdate");if(pprice!=null&&!pprice.equals("")) condition="orderbypPrice"+pprice;if(pdate!=null&&!pdate.equals("")){if(condition==null)condition="orderbypDate"+pdate;elsecondition=condition+",pDate"+pdate; }if(condition!=null)sql=sql+""+condition;ResultSetrs=stmt.executeQuery(sql);%>vtablewidth="100%"border="0">vtralign="center"> vtdwidth="15%">產(chǎn)品編碼v/td> vtdwidth="15%">產(chǎn)品名稱v/td>vtdwidth="15%">生產(chǎn)地址v/td> vtdwidth="15%">生產(chǎn)時間v/td> vtdwidth="15%">出廠價格v/td>v/tr>v%while(rs.next()){%>vtralign="center">vtdwidth="15%">v%=rs.getInt("pid")%>v/td>vtdwidth="15%">v%=rs.getString("pname")%>v/td>vtdwidth="15%">v%=rs.getString("paddress")%>v/td>vtdwidth="15%">v%=rs.getString("pdate")%>v/td>vtdwidth="15%">v%=rs.getDouble("pprice")%>v/td>v/tr>v%}}catch(Exceptione){e.printStackTrace();}finally{if(conn!=null)conn.close();}%>v/table>v/body>v/html>//ptselectProduct.jspv%@pagecontentType="text/html;charset=gb2312"language="java"import="java.sql.*"%>vhtml>vbody>根據(jù)條件查詢產(chǎn)品信息:vformaction=""method="post">vtablewidth="100%"border="0">vtr>vtdalign="center">出廠價格:vinputtype="radio"name="pprice"value="asc">升序vinputtype="radio"name="pprice"value="desc"> 降序v/td>vtdalign="center">生產(chǎn)時間:vinputtype="radio"name="pdate"value="asc">升序vinputtype="radio"name="pdate"value="desc">|降序v/td>vtdxinputtype="submit"name="Submit"value="提交"〉v/td>v/tr>v/table>v/form>v%StringdriverName="com.mysql.jdbc.Driver";try{ Class.forName(driverName);}catch(ClassNotFoundExceptione){}StringconURL="jdbc:mysql://localhost:3306/warehouse";Connectionconn=null;try{conn=DriverManager.getConnection(conURL,"root","root");Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);Stringsql="select*fromproduct"; Stringcondition=null;Stringpprice=request.getParameter("pprice");Stringpdate=request.getParameter("pdate");if(pprice!=null&&!pprice.equals("")) condition="orderbypPrice"+pprice;if(pdate!=null&&!pdate.equals("")){if(condition==null)condition="orderbypDate"+pdate;elsecondition=condition+",pDate"+pdate;}if(condition!=null) sql=sql+""+condition;ResultSetrs=stmt.executeQuery(sql);%>vtablewidth="100%"border="0">vtralign="center">vtdwidth="15%">產(chǎn)品編碼v/td> vtdwidth="15%">產(chǎn)品名稱v/td>vtdwidth="15%">生產(chǎn)地址v/td> vtdwidth="15%">生產(chǎn)時間v/td>vtdwidth="15%">出廠價格v/td>v/tr>v%while(rs.next()){%>vtralign="center">vtdwidth="15%">v%=rs.getInt("pid")%>v/td>vtdwidth="15%">v%=rs.getString("pname")%>v/td>vtdwidth="15%">v%=rs.getString("paddress")%>v/td>vtdwidth="15%">v%=rs.getString("pdate")%>v/td>vtdwidth="15%">v%=rs.getDouble("pprice")%>v/td>v/tr>v%}}catch(Exceptione){e.printStackTrace();}finally{if(conn!=null)conn.close();}%>v/table>v/body>v/html>//mhselectProduct.jspv%@pagecontentType="text/html;charset=gb2312"language="java"import="java.sql.*"%>vhtml>vbody>根據(jù)條件查詢產(chǎn)品信息:vformaction=""method="post">vtablewidth="100%"border="0">vtr>vtdalign="center">產(chǎn)品名稱: vinputname="productName"type="text"size="15">v/td>vtdalign="center">生產(chǎn)地址: vinputname="productAddress"type="text"size="15">v/td>vtd>vinputtype="submit"name="Submit"value="提交"〉v/td>v/tr>v/table>v/form>v%StringdriverName="com.mysql.jdbc.Driver";try{ Class.forName(driverName);}catch(ClassNotFoundExceptione){}StringconURL="jdbc:mysql://localhost:3306/warehouse";Connectionconn=null;try{conn=DriverManager.getConnection(conURL,"root","root");Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);Stringsql="select*fromproduct"; Stringcondition=null;StringpName=request.getParameter("productName"); StringpAddress=request.getParameter("productAddress");StringlowPrice=request.getParameter("lowPrice");StringhighPrice=request.getParameter("highPrice");if(pName!=null&&!pName.equals("")){ byte[]b=pName.getBytes("ISO-8859-1");pName=newString(b);condition="pNamelike'%"+pName+"%'";}if(pAddress!=null&&!pAddress.equals("")){byte[]b=pAddress.getBytes("ISO-8859-1");pAddress=newString(b);if(condition==null)condition="pAddresslike'%"+pAddress+"%'";elsecondition=condition+"andpAddresslike'%"+pAddress+"%'"; }if(condition!=null) sql=sql+"where"+condition;ResultSetrs=stmt.executeQuery(sql);%><tablewidth="100%"border="0"><tralign="center"><tdwidth="15%">產(chǎn)品編碼</td> vtdwidth="15%">產(chǎn)品名稱</td>vtdwidth="15%">生產(chǎn)地址v/td> vtdwidth="15%">生產(chǎn)時間</td> vtdwidth="15%">出場價格</td></tr><% while(rs.next()){%>vtralign="center">vtdwidth="15%">v%=rs.getInt("pid")%>v/td>vtdwidth="15%">v%=rs.getString("pname")%>v/td>vtdwidth="15%">v%=rs.getString("paddress")%>v/td>vtdwidth="15%">v%=rs.getString("pdate")%>v/td>vtdwidth="15%">v%=rs.getDouble("pprice")%>v/td>v/tr>v%}}catch(Exceptione){e.printStackTrace();}finally{if(conn!=null)conn.close();}%>v/table>v/body>v/html>//sjselectProduct.jspv%@pagecontentType="text/html;charset=gb2312"language="java"import="java.sql.*"%>vhtml>vbody>隨機查詢產(chǎn)品信息:vformaction=""method="post">vtablewidth="100%"border="0">vtr> vtdalign="right">輸入要查詢的記錄號:v/td>vtd>vinputtype="text"name="recordNum">vinputtype="submit"name="Submit"value—提交">v/td>vtd> v/td>v/tr>v/table>v/form>v%StringdriverName="com.mysql.jdbc.Driver";try{ Class.forName(driverName);}catch(ClassNotFoundExceptione){}StringconURL="jdbc:mysql://localhost:3306/warehouse";Connectionconn=null;try{conn=DriverManager.getConnection(conURL,"root","root");Statementstmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);Stringsql="select*fromproduct"; ResultSetrs=stmt.executeQuery(sql);%>vtablewidth="100%"border="0">vtralign="center">vtdwidth="15%">產(chǎn)品編碼v/td> vtdwidth="15%">產(chǎn)品名稱v/td>vtdwidth="15%">生產(chǎn)地址v/td> vtdwidth="15%">生產(chǎn)時間v/td> vtdwidth="15%">出場價格v/td>v/tr>v% StringrecordNum=request.getParameter("recordNum");if(!recordNum.equals("")){ intnum=Integer.parseInt(recordNum);rs.last();intallNum=rs.getRow();if(num>0&&numv=allNum){ rs.absolute(num);%>vtralign="center">vtdwidth="15%">v%=rs.getInt("pid")%>v/td>vtdwidth="15%">v%=rs.getString("pname")%>v/td>vtdwidth="15%">v%=rs.getString("paddress")%>v/td>vtdwidth="15%">v%=rs.getString("pdate")%>v/td>vtdwidth="15%">v%=rs.getDouble("pprice")%>v/td>v/tr>v%}}}catch(Exceptione){e.printStackTrace();}finally{if(conn!=null)conn.close();}%>v/table>v/body>v/html>//tjselectProduct.jspv%@pagecontentType="text/html;charset=gb2312"language="java"import="java.sql.*"errorPage=""%>vhtml>vhead>vmetahttp-equiv="Content-Type"content="text/html;charset=gb2312">vtitle>商品管理后臺系統(tǒng)v/title>v/head>vbody>根據(jù)條件查詢產(chǎn)品信息:vformaction=""method="post">vtablewidth="100%"border="0">vtr>vtdalign="center">產(chǎn)品名稱:vinputname="productName"type="text"size="15">v/td>vtdalign="center">生產(chǎn)地址:vinputname="productAddress"type="text"size="15">v/td>vtdalign="center">價格范圍:<inputname="lowPrice"type="text"value="0"size="10">在<inputname="highPrice"type="text"size="10">之間</tdxtdxinputtype="submit"name="Submit"value—提交">v/td></tr></table></form><%StringdriverName="com.mysql.jdbc.Driver";try{ Class.forName(driverName);}catch(ClassNotFoundExceptione){}StringconURL="jdbc:mysql://localhost:3306/warehouse";Connectionconn=null;try{conn=DriverManager.getConnection(conURL,"root","root");Statement stmtconn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);Stringsql="select*fromproduct";Stringcondition=null;StringpName=request.getParameter("productName");StringpAddress=request.getParameter("productAddress");StringlowPrice=request.getParameter("lowPrice");StringhighPrice=request.getParameter("highPrice");if(pName!=null&&!pName.equals("")){byte[]b=pName.getBytes("ISO-8859-1");pName=newString(b);condition="pName='"+pName+"'";}if(pAddress!=null&&!pAddress.equals("")){byte[]b=
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國聚酰亞胺(PI)薄膜行業(yè)運行現(xiàn)狀及發(fā)展前景分析報告
- 2025福建省建筑安全員C證考試題庫
- 南京師范大學《統(tǒng)計學專業(yè)前沿》2023-2024學年第二學期期末試卷
- 四川農(nóng)業(yè)大學《醫(yī)學論文寫作與學術(shù)誠信》2023-2024學年第二學期期末試卷
- 廣西體育高等專科學?!兜厍蛭锢韺W》2023-2024學年第二學期期末試卷
- 甘肅畜牧工程職業(yè)技術(shù)學院《研究型綜合》2023-2024學年第二學期期末試卷
- 哈爾濱工程大學《學前教育專業(yè)英語》2023-2024學年第二學期期末試卷
- 2024-2025學年山東省百師聯(lián)考高三上學期11月考試歷史試卷
- 上海民遠職業(yè)技術(shù)學院《服裝市場調(diào)研》2023-2024學年第二學期期末試卷
- 山西信息職業(yè)技術(shù)學院《秘書學》2023-2024學年第二學期期末試卷
- 術(shù)后鎮(zhèn)痛泵的使用與護理
- GB 19522-2024車輛駕駛?cè)藛T血液、呼氣酒精含量閾值與檢驗
- 2024年成都新都投資集團有限公司招聘筆試沖刺題(帶答案解析)
- 危險預知訓練表(KYT)
- 2024年湖南鐵路科技職業(yè)技術(shù)學院單招職業(yè)技能測試題庫及答案解析
- 《書籍裝幀設計》 課件 項目1 走進書籍裝幀設計
- ASTM標準全部目錄(中文版)
- 《汽車電氣設備構(gòu)造與維修》 第4版 課件 第3、4章 電源系統(tǒng)、發(fā)動機電器
- 遼海版小學美術(shù)六年級下冊全冊教案
- 2023年南京市鼓樓區(qū)建寧路街道安監(jiān)辦招聘專職安全員考試真題及答案
- 鄉(xiāng)鎮(zhèn)精神衛(wèi)生工作總結(jié)
評論
0/150
提交評論