| package com.ruoyi.framework.config; | 
|   | 
| import java.util.Random; | 
| import com.google.code.kaptcha.text.impl.DefaultTextCreator; | 
|   | 
| /** | 
|  * 验证码文本生成器 | 
|  * | 
|  * @author ruoyi | 
|  */ | 
| public class KaptchaTextCreator extends DefaultTextCreator | 
| { | 
|     private static final String[] CNUMBERS = "0,1,2,3,4,5,6,7,8,9,10".split(","); | 
|   | 
|     @Override | 
|     public String getText() | 
|     { | 
|         Integer result = 0; | 
|         Random random = new Random(); | 
|         int x = random.nextInt(10); | 
|         int y = random.nextInt(10); | 
|         StringBuilder suChinese = new StringBuilder(); | 
|         int randomoperands = random.nextInt(3); | 
|         if (randomoperands == 0) | 
|         { | 
|             result = x * y; | 
|             suChinese.append(CNUMBERS[x]); | 
|             suChinese.append("*"); | 
|             suChinese.append(CNUMBERS[y]); | 
|         } | 
|         else if (randomoperands == 1) | 
|         { | 
|             if ((x != 0) && y % x == 0) | 
|             { | 
|                 result = y / x; | 
|                 suChinese.append(CNUMBERS[y]); | 
|                 suChinese.append("/"); | 
|                 suChinese.append(CNUMBERS[x]); | 
|             } | 
|             else | 
|             { | 
|                 result = x + y; | 
|                 suChinese.append(CNUMBERS[x]); | 
|                 suChinese.append("+"); | 
|                 suChinese.append(CNUMBERS[y]); | 
|             } | 
|         } | 
|         else | 
|         { | 
|             if (x >= y) | 
|             { | 
|                 result = x - y; | 
|                 suChinese.append(CNUMBERS[x]); | 
|                 suChinese.append("-"); | 
|                 suChinese.append(CNUMBERS[y]); | 
|             } | 
|             else | 
|             { | 
|                 result = y - x; | 
|                 suChinese.append(CNUMBERS[y]); | 
|                 suChinese.append("-"); | 
|                 suChinese.append(CNUMBERS[x]); | 
|             } | 
|         } | 
|         suChinese.append("=?@" + result); | 
|         return suChinese.toString(); | 
|     } | 
| } |