




已閱讀5頁,還剩4頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
jsp+mysql進(jìn)行簡(jiǎn)單的增刪改查總結(jié)第一步創(chuàng)建一個(gè)新的包用于封裝學(xué)生屬性在新包里面創(chuàng)建新的類存入學(xué)生屬性public class shuxing String name;int age;String sex;int id;右擊鼠標(biāo)選擇soure-gennerate gettersand setters來封裝數(shù)據(jù)第二步創(chuàng)建另一個(gè)新的包用于主體serlvet的操作Servlet里面操作:1. 因?yàn)閐oget比dopost擁有更強(qiáng)的保密性,所以把dopost的語句也沿用doget的形式doPost(request,response);注意刪除的時(shí)候是不是把也刪除了,會(huì)報(bào)錯(cuò)。2將設(shè)置請(qǐng)求的編碼格式為UTF-8防止后面輸入學(xué)生信息的時(shí)候出現(xiàn)亂碼,之所以放在前面是怕后面寫的話就不可以public公用了。3讀取后面表中按鈕的名稱,用一個(gè)新的名字來獲取隨后跳轉(zhuǎn)需要調(diào)用的語句String opeationName = request.getParameter(openration);/取出條件的OPENRATION,看執(zhí)行哪一種語句4查看取出的名稱是否為空。opeationName = opeationName=null?:opeationName.trim();/取出來看下是不是空,不是空去掉空格5用if()else()語句來寫調(diào)用的程序用前面取出的名字一:刪除方法:opeationName.equals(delete)(1)提取要?jiǎng)h除的ID String id=request.getParameter(id);(2).查看是否為空,為空輸出“”if(id=null)id=;(3).trycatch()語句用于報(bào)錯(cuò) tryint result = doDelete(id);/調(diào)用到doDelete的方法List qw = new ArrayList();/創(chuàng)建新的集合用于存放數(shù)據(jù)qw = getData();/獲取數(shù)據(jù)request.setAttribute(qw ,qw);/ 緩存范圍中設(shè)置具體的屬性:第一個(gè)參數(shù)是屬性名,字符串類型的數(shù)據(jù)。,也是以后獲取的依據(jù)條件,第二個(gè)是插入的數(shù)據(jù),支持對(duì)象屬性。(4)跳轉(zhuǎn)進(jìn)入最開始的jsp頁面即查詢語句的JSP界面二增加opeationName.equals(add)(1).增加不需要提取什么屬性。直接獲取在JSP中提交的數(shù)據(jù)即可,但是要觀察是否為空String newname=request.getParameter(name);if(newname=null)newname=;String newid=request.getParameter(id);if(newid=null)newid=;String newsex=request.getParameter(sex);if(newsex=null)newsex=;String newage=request.getParameter(age);if(newage=null)newage=;(2).一樣的try語句需要注意的是在DOADD后面寫上屬性的名稱方便后面調(diào)用int result = doAdd(newname,newid,newage,newsex);(3).跳轉(zhuǎn)到查詢頁面三查詢頁面(1)創(chuàng)建一個(gè)新的集合用于存放數(shù)據(jù)List qw = new ArrayList();Try用于報(bào)錯(cuò)tryqw = getData();catch(Exception e)e.printStackTrace();緩存數(shù)據(jù)request.setAttribute(qw ,qw);跳轉(zhuǎn) request.getRequestDispatcher(index.jsp).forward(request, response);四:開始查詢的主程序:public List getData() throws ExceptionList qw = new ArrayList();/驅(qū)動(dòng)程序名String driverName=com.mysql.jdbc.Driver;/數(shù)據(jù)庫用戶名String userName=root;/密碼String userPasswd=123456;/數(shù)據(jù)庫名String dbName=xueshenbiao;/表名String tableName=tubiao;/聯(lián)結(jié)字符串String url=jdbc:mysql:/localhost/+dbName+?user=+userName+&password=+userPasswd;Class.forName(com.mysql.jdbc.Driver).newInstance();java.sql.Connection connection=DriverManager.getConnection(url);Statement statement = connection.createStatement();String sql=SELECT * FROM tubiao ;ResultSet rs = statement.executeQuery(sql); /獲得數(shù)據(jù)結(jié)果集合ResultSetMetaData rmeta = rs.getMetaData();/確定數(shù)據(jù)集的列數(shù),亦字段數(shù)int numColumns=rmeta.getColumnCount();以上都是連接數(shù)據(jù)庫的操作下面的是獲取數(shù)據(jù)的操作while(rs.next()/循環(huán)操作shuxing a1=new shuxing();int Id = rs.getInt(1);String Name = rs.getString(2);String Sex = rs.getString(3);int Age = rs.getInt(4);a1.setId(Id);a1.setAge(Age);a1.setName(Name);a1.setSex(Sex);qw.add(a1);return qw;五:刪除主程序:int result =0;/用個(gè)result來做參數(shù)現(xiàn)在用不到以后可以在刪除不成功的時(shí)候用于頁面的跳轉(zhuǎn)String deleteAll=DELETE FROM tubiao WHERE id + = +id+;result = statement.executeUpdate(deleteAll);return result;六.增加主程序:public int doAdd(String newname,String newid,String newage,String newsex ) throws Exception/注意對(duì)應(yīng)/驅(qū)動(dòng)程序名String condition1=INSERT INTO tubiao(name,id,age,sex) VALUES+(+newname+,+newid+,+newage+,+newsex+); /注意一一對(duì)應(yīng)。不對(duì)應(yīng)就在tubiao后面寫參數(shù) int result = statement.executeUpdate(condition1); 七:修改之所以放在最后是因?yàn)椴襟E比較多(1)。首先需要查找要修改的原始數(shù)據(jù)的值,opeation不直接調(diào)用修改的方法而是首先找到需要修改的學(xué)生的信息;步驟和查詢信息差不多shuxing a1 = new shuxing();String id = request.getParameter(id);/查這個(gè)ID的學(xué)生信息/驅(qū)動(dòng)程序名String driverName=com.mysql.jdbc.Driver;/數(shù)據(jù)庫用戶名String userName=root;/密碼String userPasswd=123456;/數(shù)據(jù)庫名String dbName=xueshenbiao;/表名String tableName=tubiao;/聯(lián)結(jié)字符串tryString url=jdbc:mysql:/localhost/+dbName+?user=+userName+&password=+userPasswd;Class.forName(com.mysql.jdbc.Driver).newInstance();java.sql.Connection connection=DriverManager.getConnection(url);Statement statement = connection.createStatement();String sql=SELECT * FROM tubiao where id=+id;ResultSet rs = statement.executeQuery(sql); /獲得數(shù)據(jù)結(jié)果集合ResultSetMetaData rmeta = rs.getMetaData();/確定數(shù)據(jù)集的列數(shù),亦字段數(shù)int numColumns=rmeta.getColumnCount();while(rs.next()int Id = rs.getInt(1); String Name = rs.getString(2); String sex = rs.getString(3); int Age = rs.getInt(4); a1.setId(Id); a1.setAge(Age); a1.setName(Name); a1.setSex(sex);rs.close(); statement.close(); connection.close(); catch(Exception e)e.printStackTrace();(2).緩存數(shù)據(jù)request.setAttribute(a1, a1);(3).跳入修改的JSP進(jìn)行修改的操作(4).由JSP跳轉(zhuǎn)進(jìn)入調(diào)用修改的方法與前面的類似opeationName.equals(modify)String id = request.getParameter(id);/調(diào)用修改方法 if(id=null)id=; String newname=request.getParameter(name);if(newname=null)newname=; String newage=request.getParameter(age);if(newage=null)newage=; String newsex=request.getParameter(sex);if(newsex=null)newsex=;tryint result = doModify(id,newname,newage,newsex);List qw = new ArrayList();qw = getData();request.setAttribute(qw ,qw);catch(Exception e)e.printStackTrace();request.getRequestDispatcher(index.jsp).forward(request, response);注意的是修改主程序中在插入update的時(shí)候分開來寫String condition1=UPDATE tubiao SET name = +newname+ WHERE id =+id; String condition2=UPDATE tubiao SET sex = +newsex+ WHERE id =+id; String condition3=UPDATE tubiao SET age = +newage+ WHERE id =+id; int result = statement.executeUpdate(condition1);int result2 = statement.executeUpdate(condition2);int result3 = statement.executeUpdate(condition3);/獲得數(shù)據(jù)結(jié)果集合八JSP中的操作增加的JSP:注意action對(duì)應(yīng)的東西就好Form action=chaxun1?openration=add?如果是整句話意思:查找chaxun1中openration為add,跳轉(zhuǎn)修改的JSP也差不多Form action=chaxun1?openration=add查詢的JSP麻煩一點(diǎn),因?yàn)橛泻芏嗟某溄?首先要先獲取之前集合里面的數(shù)據(jù)List shuxingList = new ArrayList();if(request.getAttribute(qw)!=null)shuxingList =(List)request.getAttrib
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年工程機(jī)械金融租賃行業(yè)市場(chǎng)深度分析及發(fā)展模式前景與案例研究報(bào)告
- 2025-2030年導(dǎo)電玻璃纖維行業(yè)市場(chǎng)發(fā)展分析及前景趨勢(shì)與投資管理研究報(bào)告
- 2025-2030年家居服產(chǎn)業(yè)行業(yè)市場(chǎng)現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025-2030年安全繩行業(yè)市場(chǎng)現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025-2030年國內(nèi)裝載機(jī)行業(yè)市場(chǎng)發(fā)展分析及發(fā)展前景與投資機(jī)會(huì)研究報(bào)告
- 2025-2030年唇彩行業(yè)投資機(jī)會(huì)及風(fēng)險(xiǎn)投資運(yùn)作模式研究報(bào)告
- 2025-2030年農(nóng)資流通產(chǎn)業(yè)市場(chǎng)深度調(diào)研及發(fā)展趨勢(shì)與投資戰(zhàn)略研究報(bào)告
- 2025-2030年農(nóng)業(yè)植保無人機(jī)行業(yè)市場(chǎng)深度調(diào)研及前景趨勢(shì)與投資研究報(bào)告
- 行政管理經(jīng)濟(jì)法概論重要資料整合與試題及答案
- 2025年經(jīng)濟(jì)法概論考試準(zhǔn)備指南及試題與答案
- 未成年離異孩子改姓協(xié)議書范文(2篇)
- 2024年4月醫(yī)學(xué)裝備質(zhì)量管理情況簡(jiǎn)報(bào)
- 礦井通風(fēng)模擬設(shè)計(jì)-馮樹鳴
- 耳石癥的診斷與治療
- 企業(yè)形象設(shè)計(jì)(CIS)戰(zhàn)略策劃及實(shí)施計(jì)劃書
- 塔吊司機(jī)指揮安全培訓(xùn)
- 19G522-1鋼筋桁架混凝土樓板圖集
- 2023年上半年中級(jí)信息系統(tǒng)監(jiān)理師下午真題
- 農(nóng)學(xué)專業(yè)深度解析模板
- 儲(chǔ)罐內(nèi)噴鋁施工方案
- 2024年江西省高考地理真題(解析版)
評(píng)論
0/150
提交評(píng)論