首页 > 其他分享 >页面调整、 登录功能_验证码显示

页面调整、 登录功能_验证码显示

时间:2022-08-19 14:12:14浏览次数:63  
标签:登录 int 验证码 height width ran 页面

页面调整

在jsp页面添加 (添加,删除,查询)

<div style="float: right;margin: 5px;">
<a class="btn btn-primary" href="${pageContext.request.contextPath}/add.jsp">添加联系人</a>
<a class="btn btn-primary" href="add.html">删除选择</a>
</div>

<form class="form-inline">
<div class="form-group">
<label for="exampleInputName2">姓名</label>
<input type="text" class="form-control" id="exampleInputName2">
</div>
<div class="form-group">
<label for="exampleInputName3">籍贯</label>
<input type="text" class="form-control" id="exampleInputName3">
</div>
<div class="form-group">
<label for="exampleInputEmail2">邮箱</label>
<input type="email" class="form-control" id="exampleInputEmail2">
</div>
<button type="submit" class="btn btn-default">查询</button>
</form>

运行结果:

  

 

 登录功能_验证码显示

  登录:调整页面,添加验证码

 写入验证码

  

  @Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
int width = 100;
int height = 50;

//1.创建一对象 在内存中图片(验证码图片对象)
BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
//2.美化图片
//2.1填充背景色
Graphics g = image.getGraphics();//画笔对象
g.setColor(Color.PINK);
g.fillRect(0,0,width,height);

//2.2画边框
g.setColor(Color.BLUE);
g.drawRect(0,0,width-1 ,height-1);

String str="ABCDEFGHIJLMNOPQRTUVWXYZabcdefghigklmnopqstuvwxyz0123456789";

//生成随机角标
Random ran = new Random();
StringBuilder sb = new StringBuilder();
for (int i=1;i<=4;i++){
int index=ran.nextInt(str.length());
//获取字符
char ch = str.charAt(index);//随机字符
sb.append(ch);
//2.3写验证码
g.drawString(ch+"",width/5*i,height/2);
}
String checkCode_session = sb.toString();
//将验证码存入session
req.getSession().setAttribute("checkCode_session",checkCode_session);

//2.4画干扰线
g.setColor(Color.GREEN);
//随机生成坐标点
for (int i = 0; i < 10; i++) {
int x1=ran.nextInt(width);
int x2=ran.nextInt(width);

int y1=ran.nextInt(height);
int y2=ran.nextInt(height);
g.drawLine(x1,x2,y1,y2);
}

//3.将图片输出到页面展示
ImageIO.write(image,"jpg",resp.getOutputStream());



}

@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doGet(req, resp);
}
}

在jsp页面修饰,

  

<a href="javascript:refreshCode()">
<img src="${pageContext.request.contextPath}/CheckCodeServlet" title="看不清点击刷新" id="vcode"/>
</a>

添加点击换验证码,加入时间

<script>
function refreshCode() {
// 获取验证码图片对象
var vco = document.getElementById("vcode");
// 设置其src属性,加时间搓
vco.src="${pageContext.request.contextPath}/CheckCodeServlet?time"+new Date().getTime();
}
</script>

 

 

 

点击换验证码

 

 

 

标签:登录,int,验证码,height,width,ran,页面
From: https://www.cnblogs.com/ssr1/p/16601767.html

相关文章