最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Java學習筆記:防注入,預處理的實現(xiàn)步驟,字節(jié)流,獲取,讀取配置文件【詩書畫唱】

2020-07-08 22:31 作者:詩書畫唱  | 我要投稿


SQL_PreparedStatement:

什么是防注入?

直接輸入字符串,拼接后,用戶再輸入一個or 1=1的時候,那么這個條件是肯定成立的,所以用戶輸入不輸入用戶名都沒有多大的關系了,會把數(shù)據(jù)都打印出來等等。為了解決這個問題,就要使用preparedstatement解決,它默認將sql語句編譯成函數(shù),每次只要傳入相應的參數(shù)就可以了,就可以防止用戶sql注入。

預處理:我們每次對于數(shù)據(jù)庫操作數(shù)據(jù)庫都要將sql語句編譯成函數(shù),

如果我們使用預處理的時候,數(shù)據(jù)庫就默認生成了一個函數(shù),以后

傳入相同的內(nèi)容的時候,只需要調用這個函數(shù)就可以了,這個就可以提升sql執(zhí)行的效率


預處理的實現(xiàn)步驟:

//1.導入數(shù)據(jù)包

//2.加載數(shù)據(jù)包

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

//3.創(chuàng)建連接數(shù)據(jù)庫的對象(Connection)

Connection con=DriverManager.getConnection("jdbc:sqlserver://localhost;databaseName=fuxi","qqq","11111");

//4.創(chuàng)建執(zhí)行sql語句的對象,是用statement,防注入,預處理是用preparedStatement

String sql="select * from denglu where uid=? and uname=?";//1

PreparedStatement ps=con.prepareStatement(sql);//編譯sql語句

ps.setObject(1, 1);

ps.setObject(2, "qwe");

//5.寫并且執(zhí)行sql語句,ResultSet的對象

ResultSet res=ps.executeQuery();//使用這個方法去執(zhí)行sql語句

//6.遍歷這個對象

while(res.next()){

System.out.println(res.getObject(1)+"? "+res.getObject(2));

}


為什么要讀取配置文件:

//將一些常用的配置信息保存在配置文件里,

//java類一旦編譯,雖然我們不能直接修改編譯后的文件,但是我們

//可以修改配置文件,寫的代碼對于配置都是去配置文件里讀的,萬一

//數(shù)據(jù)庫用戶名或者密碼修改之后,我直接修改配置文件即可。

//讀取配置文件:

//1.建立一個文件,src目錄下,文件名稱可以隨便,但是后綴名必須為.properties

//2..properties中添加幾個內(nèi)容

//3.在main中添加一下代碼


將這個配置文件轉化為字節(jié)流

//使用類加載器轉化文件

InputStream is=qqq.class.getResourceAsStream ("../zz.properties");

Properties p=new Properties();

p.load(is);

System.out.println(p);

//獲取指定的單個內(nèi)容

System.out.println(p.getProperty("qq"));




配置文件就是XXX.properties格式的文件

之后點“New”“Other”“File”,之后就命名XXX.properties格式。

每次寫好Java文件,點擊執(zhí)行的時候,都會自動編譯生成和Java文件相同名字的class文件,之后發(fā)給別的公司class文件和配置文件,別的公司把這個文件從桌面等處拖到Java等的編譯器中時,可以運行,并且用配置文件更改處理class中的數(shù)據(jù)庫名,用戶名,用戶密碼等。但看到的都是”0101“之類的二進制,但可以通過“反編譯”生成源碼等。

Java學習筆記:防注入,預處理的實現(xiàn)步驟,字節(jié)流,獲取,讀取配置文件【詩書畫唱】的評論 (共 條)

分享到微博請遵守國家法律
昂仁县| 四平市| 江源县| 栖霞市| 富阳市| 福建省| 桂东县| 南昌县| 保康县| 兴宁市| 德阳市| 志丹县| 离岛区| 平湖市| 牡丹江市| 宁都县| 扶沟县| 宜都市| 团风县| 龙山县| 夏邑县| 湖北省| 内乡县| 宁国市| 通辽市| 怀化市| 上犹县| 敦化市| 英超| 乳山市| 宜兴市| 鸡泽县| 兴国县| 泰州市| 松桃| 巫山县| 全南县| 普陀区| 灵武市| 进贤县| 黄骅市|