日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

jdbc操作步骤和preparedStatment相比Statment的好处

發(fā)布時間:2025/4/16 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 jdbc操作步骤和preparedStatment相比Statment的好处 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

java操縱數(shù)據(jù)庫封裝了一組API,通過這組API可以透明的操作各種數(shù)據(jù)庫,一般來講,操縱數(shù)據(jù)庫的步驟是:

一、

try{

1、加載數(shù)據(jù)庫驅(qū)動

????? Class.forName("數(shù)據(jù)庫驅(qū)動類");

2,獲得數(shù)據(jù)庫連接

????? Connection con=DriverManager.getConnection("數(shù)據(jù)庫地址","用戶名","密碼");

3,獲得執(zhí)行sql語句的對象

????? Statment st = con.creatStatment();?????????????? ||?????? PreparedStatment pst = con.creatPrepareStatment(sql);

4,生成并執(zhí)行sql語句

????? ResultSet rs = st.executeQuery(sql)?? //返回查詢結(jié)構(gòu)集???????????? ||?????? ResultSet rst =?pst.executeQuery();??? /注意傳入sql的位置

????? int rs = st.executeUpdate(sql)?? //返回受影響的行數(shù)

????? boolen rs = st.execute(sql)??? //適合在不知道sql語句類型的情況下操作,不推薦使用

5,獲得結(jié)果集

???? while(rs.next()){

?????????????? re.getString("");

?????????????? ......

??????}

}catch (Exception e){

????? e.printStack();

}finally{

6,后期處理

????? try{

?????????????? rs.close();???? //先打開的后關(guān)閉

?????????????? st.close();

???????????????con.close();

??????????}catch (Exception e){

?????????????? e.printStack();

??????????}?

???}?

二、好處:

1、PreparedStatment對sql進行了預(yù)編譯,適合執(zhí)行大量相似的操作,無需每次傳入sql語句,只需要傳入sql語句中相應(yīng)相應(yīng)參數(shù)即可,預(yù)編譯時sql語句中的參數(shù)用”?“代替

????? 它的性能比較好,執(zhí)行效率高

2、PrepraedStatment因進行了預(yù)編譯,所以不用每次拼接sql語句字符串,一來大大減少了了程序書寫時的錯誤,二來同樣減少了系統(tǒng)開銷

3、PreparedStatment方式可以防止惡意sql注入

《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的jdbc操作步骤和preparedStatment相比Statment的好处的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。