学习目标:
SSM框架项目实践
学习内容:
完成了加载图书详情数据、短评数据。学习了kaptcha生成验证码以及校验验证码。
package com.imooc.reader.controller; import com.google.code.kaptcha.Producer; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import javax.annotation.Resource; import javax.imageio.ImageIO; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.awt.image.BufferedImage; import java.io.IOException; @Controller public class KaptchaController { @Resource private Producer kaptchaProducer; @GetMapping("/api/verify_code") public void createVerifyCode(HttpServletRequest request, HttpServletResponse response) throws IOException { //响应立即过期 response.setDateHeader("Expires", 0); //不缓存任何图片数据 response.setHeader("Cache-Control","no-store,no-cache,must-revalidate"); response.setHeader("Cache-Control", "post-check=0,pre-check=0"); response.setHeader("Pragma", "no-cache"); response.setContentType("image/png"); //生成验证码图片 String text = kaptchaProducer.createText(); request.getSession().setAttribute("kaptchaVerifyCode", text); BufferedImage image = kaptchaProducer.createImage(text); ServletOutputStream outputStream = response.getOutputStream(); ImageIO.write(image, "png", outputStream); outputStream.flush(); outputStream.close(); } }
学习时间:
9:30-11:00 11:40-12:40 18:00-19:00
学习产出:
完善了前台的数据展现的后端业务逻辑,同时学习了kaptcha的生成与校验。