Java进阶开发课堂笔记(五)

优化代码

在开发完登录功能后,发现存在许多重复的代码(参考Java进阶开发课堂笔记(四))此时,我们需要优化代码。
代码优化前:
在这里插入图片描述
在这里插入图片描述
代码优化后:
在这里插入图片描述
在这里插入图片描述
这样代码就显得比较简洁,以后修改代码的时候,就不会出现一处修改了,而另外一处相同的代码忘记修改的情况。

开发验证码功能

完成了以上的工作之后,我们就是可以开始开发登录界面中另一个重要的功能,就是验证码功能。
首先,我们新创建一个CaptchaController的类:
在这里插入图片描述
同样,也是继承HttpServlet,并且配置好WebServlet(配置WebServlet的方法,参考Java进阶开发课堂笔记(四)),此次我们重写的是service
在这里插入图片描述
因为验证码是一张图片,而不是一个文本,所以,我们先创建一个缓冲区BufferedImage来存放图片,使用Graphics这个是抽象类,用来传给paint()方法作为画笔的,此时我们需要用的得命令有:
在这里插入图片描述
命令包含了设置背景颜色,字体大小,格式,增加斜线和噪点的代码。
因为验证码非固定文本,所有我们要定义一个方法,随机获取字符:
在这里插入图片描述
建议将容易混淆的字母去除,当然不去除也是可以的。
定义一个方法后,我们可以在main文件夹下创建一个Test文件夹用来测试方法的是否可用:
在这里插入图片描述
测试完,方法是可以使用之后,在CaptchaController里面,我们就可以调用它:

 String code =randomString(4); //调用随机生成验证码的方法
        g.drawString(code,25,32);

(具体位置可查看先前图片中,标有提示)
最后,我们要在浏览器中显示验证码:
在这里插入图片描述
完成以上操作后,就基本完成了验证码的开发,我们现在运行起来看一下。
在这里插入图片描述
最后,不要忘了提交代码到本地仓,并push到远程仓库去。

发布了7 篇原创文章 · 获赞 0 · 访问量 196

猜你喜欢

转载自blog.csdn.net/Vinseny/article/details/105218279
今日推荐