使用google.kaptcha來生成圖片驗(yàn)證碼的實(shí)現(xiàn)方法
1.導(dǎo)入依賴
<dependency> <groupId>com.google.code</groupId> <artifactId>kaptcha</artifactId> <version>2.3.2</version> </dependency>
圖片展示如下,具體jar包自己下載
jar包下載完可以使用就很完美,如果導(dǎo)入之后報(bào)錯(cuò)不能使用,則手動添加jar,進(jìn)入jar所在的位置,然后執(zhí)行下面命令
mvn install:install-file -DgroupId=com.google.code -DartifactId=kaptcha -Dversion=0.0.9 -Dfile=kaptcha-0.0.9.jar -Dpackaging=jar -DgeneratePom=true
然后開始寫代碼:
需要一個(gè)類,可以定義到entity中,看你心情吧,你開心就好,圖片如下
代碼如下:
@Configuration public class KaptchaConfig { @Bean public DefaultKaptcha producer() { Properties properties = new Properties(); properties.put("kaptcha.border", "no"); properties.put("kaptcha.textproducer.font.color", "black"); properties.put("kaptcha.textproducer.char.space", "5"); Config config = new Config(properties); DefaultKaptcha defaultKaptcha = new DefaultKaptcha(); defaultKaptcha.setConfig(config); return defaultKaptcha; } }
然后是controll代碼,也很簡單,直接上代碼,如下:
//圖片驗(yàn)證碼 @RequestMapping("/captcha.jpg") public void captcha(HttpServletResponse response)throws IOException { response.setHeader("Cache-Control", "no-store, no-cache"); response.setContentType("image/jpeg"); //生成文字驗(yàn)證碼 String text = producer.createText(); producer.createText(); //生成圖片驗(yàn)證碼 BufferedImage image = producer.createImage(text); ServletOutputStream out = response.getOutputStream(); ImageIO.write(image, "jpg", out); }
最后完成之后驗(yàn)證碼是數(shù)字字母的組合,效果圖如下所示:
總結(jié)
以上所述是小編給大家介紹的使用google.kaptcha來生成圖片驗(yàn)證碼的實(shí)現(xiàn)方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
詳解SpringBoot中@ConditionalOnClass注解的使用
這篇文章主要和大家詳細(xì)介紹一下springboot中@ConditionalOnClass注解的用法,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2022-08-08MyBatisPlus+SpringBoot實(shí)現(xiàn)樂觀鎖功能詳細(xì)流程
樂觀鎖是針對一些特定問題的解決方案,主要解決丟失更新問題,下面這篇文章主要給大家介紹了關(guān)于MyBatisPlus+SpringBoot實(shí)現(xiàn)樂觀鎖功能的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-03-03一次Jvm old過高的排查過程實(shí)戰(zhàn)記錄
這篇文章主要給大家介紹了一次Jvm old過高的排查過程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-11-11springboot3.2整合mybatis-plus詳細(xì)代碼示例
這篇文章主要給大家介紹了關(guān)于springboot3.2整合mybatis-plus的相關(guān)資料,Spring Boot是一個(gè)非常流行的Java Web框架,可以快速地搭建Web應(yīng)用程序,需要的朋友可以參考下2023-12-12java并發(fā)請求下數(shù)據(jù)插入重復(fù)問題的解決方法
現(xiàn)在遇到一個(gè)項(xiàng)目,移動設(shè)備存儲數(shù)據(jù),然后一起上傳,那就出現(xiàn)了許多重復(fù)數(shù)據(jù),這篇文章主要給大家介紹了關(guān)于java并發(fā)請求下數(shù)據(jù)插入重復(fù)問題的解決方法,需要的朋友可以參考下2021-11-11SpringCloud Gateway鑒權(quán)和跨域解決方案
網(wǎng)關(guān)是介于客戶端和服務(wù)器端之間的中間層,所有的外部請求都會先經(jīng)過 網(wǎng)關(guān)這一層,也就是說,API 的實(shí)現(xiàn)方面更多的考慮業(yè)務(wù)邏輯,而安全、性能、監(jiān)控可以交由 網(wǎng)關(guān)來做,這樣既提高業(yè)務(wù)靈活性又不缺安全性,本文給大家介紹SpringCloud Gateway鑒權(quán)和跨域解決方案,一起看看吧2023-11-11