毕业设计问题总结

1.谷歌验证码的问题:

  • 原来的项目是MVC+mybatis,现在的是boot+plus,改动的时候,验证码这块原先的三部曲当中的配置不知道在哪里配置了
    • 1.导入依赖
    • 2.主配置文件注入验证码的bean
    • 3写控制器
  • boot项目
    • 1.导入依赖
    • 
              
                  com.github.penggle
                  kaptcha
                  2.3.2
              
    • 2.编写配置类,不然控制器注入的时候,会出错
    • package com.pro.domain;
      
      import com.google.code.kaptcha.Producer;
      import com.google.code.kaptcha.impl.DefaultKaptcha;
      import com.google.code.kaptcha.util.Config;
      import org.springframework.context.annotation.Bean;
      import org.springframework.context.annotation.Configuration;
      
      import java.util.Properties;
      
      @Configuration
      public class KaptchaConfig {
          /**
           * Kaptcha图形验证码工具配置类
           * @author: Xiongch
           * @param:
           * @return: com.google.code.kaptcha.Producer
           * @date: 2022/9/9 15:47
           */
          @Bean
          public Producer kaptchaProducer() {
              // 实例一个DefaultKaptcha
              DefaultKaptcha defaultKaptcha = new DefaultKaptcha();
              // 创建配置对象
              Properties properties = new Properties();
              // 设置边框
              properties.setProperty("kaptcha.border", "yes");
              // 设置颜色
              properties.setProperty("kaptcha.border.color", "105,179,90");
              // 设置字体颜色
              properties.setProperty("kaptcha.textproducer.font.color", "blue");
              // 设置宽度
              properties.setProperty("kaptcha.image.width", "125");
              // 高度
              properties.setProperty("kaptcha.image.height", "50");
              // 设置session.key
              properties.setProperty("kaptcha.session.key", "code");
              // 设置文本长度
              properties.setProperty("kaptcha.textproducer.char.length", "4");
              // 设置字体
              properties.setProperty("kaptcha.textproducer.font.names", "宋体,楷体,微软雅黑");
              // 将以上属性设置为实例一个DefaultKaptcha的属性
              Config config = new Config(properties);
              defaultKaptcha.setConfig(config);
              // 将defaultKaptcha返回
              return defaultKaptcha;
          }
      }
      
    • 3.编写控制器
    • package com.pro.controller;
      
      import com.google.code.kaptcha.Producer;
      import org.springframework.beans.factory.annotation.Autowired;
      import org.springframework.stereotype.Controller;
      import org.springframework.web.bind.annotation.GetMapping;
      
      import javax.imageio.ImageIO;
      import javax.servlet.ServletOutputStream;
      import javax.servlet.http.HttpServletRequest;
      import javax.servlet.http.HttpServletResponse;
      import java.awt.image.BufferedImage;
      
      @Controller
      public class KaptchaController {
          @Autowired
          private Producer defaultKaptcha;//这个名字要和主配置文件里面的相同

你可能感兴趣的:(mybatis,java,spring)