J2EE软件开发-实验报告_第1页
J2EE软件开发-实验报告_第2页
J2EE软件开发-实验报告_第3页
J2EE软件开发-实验报告_第4页
J2EE软件开发-实验报告_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、J2EE软件开发课程实验报告姓名 王 烁 学号 201308003104 专业 软件工程 班级 1301 指导教师及职称 程文志(助教) 开课学期 2015 至 2016 学年 下 学期上课时间 2016 年 4 月 28 日 湖南科技学院教务处编印实验题目Servlet表单验证码的设计1 实验目的:1) 熟悉Servlet的处理流程;2) 能够在页面中熟练的使用Servlet生成验证码;3) 熟悉Web开发的流程;4) 掌握页面设计的各种技巧。2 软硬件环境:软件环境:MyEclipse、JDK环境硬件环境:电脑一台3 实验内容简述:a) 完成一个表单验证码的设计:在验证生成之前,有一个选择

2、界面,该界面有两个选项;(form.jsp)(1) 4位或6位的选择,对应生成验证码为4位或6位;(2) 验证码内容的选择:内容分为三种(数字、字母、数字+字母)b) 验证码的生成要求采用Servlet来生成,其它界面可以用jsp来响应;c) 登陆页面:(login.jsp) (提示:JavaScript的代码)(1) 用户名、密码存储在web.xml文件(context-parm存储);(2) 验证码点击后会生成新的验证;d) 验证页面:(1) 用户名、密码错误,就返回登陆页面,并提示登陆错误的相关信息(用户名和密码错误);(2) 验证码错误,就提示验证码错误;(3) 用户输入的验证码不分大

3、小写。e) 验证成功:(1) 提示:登录成功;(2) 登陆成功后,就显示个人信息,要求采用两列表格姓名张三-$name学号2013000b) 以列表的方式显示所有的用户信息,包含(用户名、密码、姓名、学号、专业、班级、学院);5) 数据处理(web.xml)将用户名和密码存储在web.xml文件中。4实现过程#choosestyles.jsp dynamicVerificationCode.html 选择验证码规格 验证码长度 1 100 验证码类型 !- - 字母 数字 #login.jsp base href= login.jsp function reload() document.ge

4、tElementById(identityImage).src=generateImg.action?ts= + new Date().getTime(); 请登录 用户名: 密码: #validating.jsp base href= 登录中. USERINPUT SYS INFO #home.jsp base href= HOME 欢迎回来,$userName. 注销 姓名: $studentName 学号: $studentNumber #GetIdentityStylesServletpackage com.shawn.controller;import java.io.IOExcep

5、tion;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class GetIdentityStylesServlet extends HttpServlet public GetIdentityStylesServlet() super();p

6、ublic void destroy() super.destroy(); / Just puts destroy string in log/ Put your code herepublic void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException int length = Integer.valueOf(request.getParameter(length).intValue();String types = request.getP

7、arameterValues(type);request.getSession().setAttribute(length, length);request.getSession().setAttribute(types, types);response.sendRedirect(login.jsp);public void init() throws ServletException #DynamicVerificationCodeServletpackage com.shawn.controller;import com.shawn.model.VerificationCodeFactor

8、y;import com.sun.image.codec.jpeg.JPEGCodec;import com.sun.image.codec.jpeg.JPEGImageEncoder;import java.awt.Color;import java.awt.Font;import java.awt.Graphics2D;import java.awt.image.BufferedImage;import java.io.IOException;import java.util.Random;import javax.servlet.ServletException;import javax

9、.servlet.ServletOutputStream;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class DynamicVerificationCodeServlet extends HttpServlet private static final long serialVersionUID = 1L;/* * Constructor of the object

10、. */public DynamicVerificationCodeServlet() super();public void destroy() super.destroy(); / Just puts destroy string in log/ Put your code herepublic void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException response.setContentType(image/jpeg);Integer

11、length = (Integer) request.getSession().getAttribute(length);String types = (String) request.getSession().getAttribute(types);System.out.println(length);System.out.println();for(String x : types)System.out.println(x);int type = 0;if(types.length = 3 | types0.equals(hidden)type = 0;elseif(types0.equa

12、ls(number)type = 1;elsetype = 2;String randomString = VerificationCodeFactory.getVerificationCode(length, type);request.getSession().setAttribute(randomString, randomString);int width = (int) (12.5 * length);int height = 30;Color color = VerificationCodeFactory.getRandomColor();Color reverse = Verif

13、icationCodeFactory.getReverseColor(color);System.out.println();BufferedImage bi = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);Graphics2D g = bi.createGraphics();g.setFont(new Font(Font.SANS_SERIF, Font.BOLD, 16);g.setColor(color);g.fillRect(0, 0, width, height);g.setColor(reverse);g

14、.drawString(randomString, 5, 20);Random random = new Random();for (int i = 0, n = random.nextInt(100); i n; i+) g.drawRect(random.nextInt(width), random.nextInt(height), 1, 1);ServletOutputStream out = response.getOutputStream();JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);encoder.enc

15、ode(bi);out.flush();/* * Initialization of the servlet. * * throws ServletException if an error occurs */public void init() throws ServletException / Put your code here#package com.shawn.controller;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.RequestDispatcher;import ja

16、vax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class LogoutServlet extends HttpServlet /* * Constructor of the object. */public LogoutServlet() super();/* * Destruction of the servle

17、t. */public void destroy() super.destroy(); / Just puts destroy string in log/ Put your code here/* * The doGet method of the servlet. * * This method is called when a form has its tag value method equals to get. * * param request the request send by the client to the server * param response the response send by the server to the client * throws ServletException if an error occurred * throws IOException if an error occurred */public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException request.getSession().invalidate();response.sen

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论