Laughing girl2021 2021-07-14 15:32 采纳率: 100%
浏览 67
已采纳

javaweb验证码切换:1、如何将页面内容居中 2、不能显示验证码框,求解惑!

package com;

import javax.imageio.ImageIO;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.util.Random;

@WebServlet(name = "VerifyCodeServlet", urlPatterns = "/code")
public class VerifyCodeServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        int width = 100;
        int height = 30;

        String data = "abcdefghijklmncpqrst01234567890";

        Random random = new Random();
        BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);

        Graphics graphics = image.getGraphics();
        graphics.setColor(Color.gray);
        graphics.fillRect(0, 0, width, height);


        graphics.setColor(Color.black);
        for (int i = 0; i < 4; i++) {

            int position = random.nextInt(data.length());
            String randomStr = data.substring(position, position + 1);
            graphics.drawString(randomStr, width / 5 * (i + 1), 15);

        }


        ImageIO.write(image, "jpg", response.getOutputStream());
    }

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

    }
}

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

<h2>切换验证码</h2>

<script>
    function changeImageCode() {
        document.getElementById('btn').isDisabled=true;
        document.getElementById('identity').src='code?ts='+new Date().getTime();

    }

</script>
<image src="code"  id="identity" onload="btn.disable=false;" style="cursor:pointer; vertical-align:middle">

</image>
<input type="button" value="看不清,更换验证码" onclick="changeImageCode()" id="btn"  style="vertical-align:middle">

</body>
</html>

<%--
  Created by IntelliJ IDEA.
  User: pan
  Date: 2021/7/14
  Time: 12:14
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
    HelloWorld
    </body>
    <div class="col-sm-3">
    <img src="${pageContext.request.contextPath}/code">
    </div>
</body>
</html>

  • 写回答

1条回答 默认 最新

  • 悟空打码 Java领域优质创作者 2021-07-17 16:12
    关注

    用div布局

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    1人已打赏

报告相同问题?

问题事件

  • 已采纳回答 7月19日
  • 创建了问题 7月14日

悬赏问题

  • ¥15 有偿求码,CNN+LSTM实现单通道脑电信号EEG的睡眠分期评估
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)
  • ¥20 matlab yalmip kkt 双层优化问题
  • ¥15 如何在3D高斯飞溅的渲染的场景中获得一个可控的旋转物体
  • ¥88 实在没有想法,需要个思路