社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  DATABASE

MySQL数据库的SQL注入与JUnit的使用

Java编程精选 • 5 年前 • 524 次点击  

点击上方“Java编程精选”,选择“置顶公众号”

关键时刻,第一时间送达!











































































































































































































































































































    先不说楚枫的这般年纪,能够踏入元武一重说明了什么,最主要的是,楚枫在刚刚踏入核心地带时,明明只是灵武七重,而在这两个月不到的时间,连跳两重修为,又跳过一个大境界,踏入了元武一重,这般进步速度,简直堪称变态啊。


    “这楚枫不简单,原来是一位天才,若是让他继续成长下去,绝对能成为一号人物,不过可惜,他太狂妄了,竟与龚师兄定下生死约战,一年时间,他再厉害也无法战胜龚师兄。”有人认识到楚枫的潜力后,为楚枫感到惋惜。


    “哼,何须一年,此子今日就必败,巫九与龚师兄关系甚好,早就看他不顺眼了,如今他竟敢登上生死台挑战巫九,巫九岂会放过他?”但也有人认为,楚枫今日就已是在劫难逃。


    “何人挑战老子?”就在这时,又是一声爆喝响起,而后一道身影自人群之中掠出,最后稳稳的落在了比斗台上。


    这位身材瘦弱,身高平平,长得那叫一个猥琐,金钩鼻子蛤蟆眼,嘴巴一张牙带色儿,说话臭气能传三十米,他若是当面对谁哈口气,都能让那人跪在地上狂呕不止。


    不过别看这位长得不咋地,他在核心地带可是鼎鼎有名,剑道盟创建者,青龙榜第九名,正是巫九是也。


    “你就是巫九?”楚枫眼前一亮,第一次发现,世间还有长得如此奇葩的人。


    巫九鼻孔一张,大嘴一咧,拍着那干瘪的肚子,得意洋洋的道:“老子就是巫九,你挑战老子?”


    “不是挑战你,是要宰了你。”楚枫冷声笑道。


    “好,老子满足你这个心愿,长老,拿张生死状来,老子今日在这里了解了这小子。”巫九扯开嗓子,对着下方吼了一声。


    如果他对内门长老这么说话,也就算了,但是敢这么跟核心长老说话的,他可真是算作胆肥的,就连许多核心弟子,都是倒吸了一口凉气,心想这楚枫够狂,想不到这巫九更狂。


    不过最让人无言的就是,巫九话音落下不久,真有一位核心长老自人群走出,缓缓得来到了比斗台上,左手端着笔墨,右手拿着生死状,来到了巫九的身前。


    “我去,这巫九什么身份,竟能这般使唤核心长老?”有人吃惊不已,那长老修为不低,乃是元武七重,比巫九还要高两个层次,但却这般听巫九的话,着实让人吃惊不已。


    “这你就不知道了吧,巫九在前些时日,拜了钟离长老为师尊,已正式得到钟离长老的亲传。”有人解释道。


    “钟离长老?可是那位性情古怪的钟离一护?”


    “没错,就是他。”


    “天哪,巫九竟然拜入了他的门下?”


    人们再次大吃一惊,那钟离一护在青龙宗可是赫赫有名,若要是论其个人实力,在青龙宗内绝对能够排入前三,连护宗六老单打独斗都不会是他的对手。


    只不过那钟离一护,如同诸葛青云一样,也是一位客卿长老,所以在青龙宗内只是挂个头衔,什么事都不管,更别说传授宗内弟子技艺了,如今巫九竟然能拜入他老人家门下,着实让人羡慕不已。


    “恩怨生死台,的确可以决斗生死,但必须要有所恩怨,你们两个人,可有恩怨?”那位长老开口询问道。































































































今天我们来玩点好玩的

相信很多小伙伴学都有一个梦想

成为一个顶尖的黑客

今天我们就满足一下虚荣心

SQL注入

首先我们先来用 JDBC 写一个登录的验证~还是按照先前的步骤~我们走起


完成了登录的查询验证逻辑,现在我们来模拟一下登录操作~,(我们主要讲的是数据库的内容,所以没有写前端的页面),假设下面的“lisi”和“444”就是我们从前端页面获取到的用户输入的用户名和密码~


先看一下,我们的用户表中只有两条数据~


运行了一下代码

登陆成功~


好~下面我们就要搞事情了~,仔细看一下我输入的用户名和密码~


我们的数据库中根本就不存在一个用户名为“wangwu”,密码为“1”的这样一个信息~但是我们通过了数据库的登录信息验证,成功的登录进了系统~~怎么样是不是很6~


这就是 SQL 注入了,在输入数据的地方输入 SQl 片段,然后在后台,和我们预先写好的 SQL 语句,拼接成新的 SQL 语句,通过这个 SQL 语句我们通过了数据库的验证~


那么如何解决这个问题:

那就是使用 PreparedStatement,PreparedStatement 叫做预编译声明,是 Statement 的子接口,我们可以使用PreparedStatement 来代替 Statement 。


PreparedStatement的好处:

1)防止 SQL 攻击。

2)提高代码的可读性,以及可维护性。

3)提高效率。


下面来给大家演示一下~只有圈起来的地方不一样~剩下的内容是不变的~


现在我们再来测试一下SQL注入,就没有效果了。

攻击自己的系统也算是一种成就吧!

为了防止自己被攻击

你知道该怎么做了吧~


今天除了说 SQL 的注入还要给大家介绍一个工具 JUnit~

Junit 单元测试

JUnit是一个 Java 语言的单元测试框架。属于第三方工具,一般情况下需要导入 jar 包,不过现在大部分的 Java开发环境已经集成了 JUnit 作为单元测试工具。


我们可以简单的理解为这是用来取代 java 的 main 方法的~使用方法也很简单直接在测试方法上添加注解 @Test 就好,下面我们来演示一下~


建议方法名以 test 开头,用鼠标点击@Test,使用快捷键“Ctrl+1”,点击“Add JUnit ...” 添加成功后项目目录就像图中标出的那样


注意运行的时候要选择“JUnit Test”


这就是测试成功的样子哦~


常用的注解除了 @Test 还有 @Before @After 它们的含义如下:

@Before 测试方法前执行的方法

@After 测试方法后执行的方法 

以后就使用这个方法来测试代码吧~


那么今天就到这里了

拜拜了


  • 来源:java联盟

  • https://mp.weixin.qq.com/s/PILw5DJYTmAnPETgOCqObg

  • Java编程精选整理发布,转载请联系作者获得授权

【点击成为源码大神】


今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/t/9thIoQUmUz
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/21585
 
524 次点击