第10章 Java Web实用开发技术 在很多Web应用程序中都存在着一些通用的模块, 如:文件的上传和下载、邮件的收发、信息的分页浏 览、在线编辑器的使用等。本章介绍这些通用的模块 涉及的一些实用开发技术。 本章的主要内容包括:验证码的设计与使用 MD5加密算法的实现、在线编辑器 CKEditor的使用、 文件上传下载组件COS的使用、使用 Javamail进行邮 件的发送、信息分页浏览的实现
第10章 Java Web实用开发技术 在很多Web应用程序中都存在着一些通用的模块, 如:文件的上传和下载、邮件的收发、信息的分页浏 览、在线编辑器的使用等。本章介绍这些通用的模块 涉及的一些实用开发技术。 本章的主要内容包括:验证码的设计与使用、 MD5加密算法的实现、在线编辑器CKEditor的使用、 文件上传下载组件COS的使用、使用JavaMail进行邮 件的发送、信息分页浏览的实现
第10章 Java Web实用开发技术 101图形验证码 10.2MD5加密 10.3在线编辑器 104文件的上传与下载 105 Java Ma编程 106页面分页技术 本章小结
第10章 Java Web实用开发技术 10.1 图形验证码 10.2 MD5加密 10.3 在线编辑器 10.4 文件的上传与下载 10.5 Java Mail编程 10.6 页面分页技术 本章小结
10.1图形验证码 很多网站为了安全,在登录或注册的时 候使用图形验证码,下面介绍验证码的作用 和具体实现。 本节主要内容: 10.11图形验证码简介 10.1.2图形验证码的实现 10.1.3案例——带图形验证码的登录模块
10.1 图形验证码 很多网站为了安全,在登录或注册的时 候使用图形验证码,下面介绍验证码的作用 和具体实现。 本节主要内容: 10.1.1 图形验证码简介 10.1.2 图形验证码的实现 10.1.3 案例——带图形验证码的登录模块
10.11图形验证码简介 在Web应用的登录功能中,主要通过对用户密 码进行验证来识别用户。不法分子可通过暴力破解程 序(遍历所有的可能性)来破解用户密码。为了增加 密码被破解的难度,提出了图形验证码,就是在用户 登录时除了输入用户名和密码外,需要额外输入服务 器端生成的图形验证码的信息,对于破解程序,识别 这些验证码比较困难,而且验证码是随机产生的,更 增加了破解的难度。同样在注册模块下引入验证码, 也可以有效防止通过程序恶意注册大量用户
10.1.1 图形验证码简介 在Web应用的登录功能中,主要通过对用户密 码进行验证来识别用户。不法分子可通过暴力破解程 序(遍历所有的可能性)来破解用户密码。为了增加 密码被破解的难度,提出了图形验证码,就是在用户 登录时除了输入用户名和密码外,需要额外输入服务 器端生成的图形验证码的信息,对于破解程序,识别 这些验证码比较困难,而且验证码是随机产生的,更 增加了破解的难度。同样在注册模块下引入验证码, 也可以有效防止通过程序恶意注册大量用户
10.11图形验证码简介 验证码就是在用户界面上以图形的方式显示的 些符号,通常是字母、数字或汉字组成的一个随 机字符串,它是如何产生和验证的呢?它通常是由 服务器端程序(如 Servlet)产生并保存的(保存在 session范围内),登录或注册时将用户输入的验证 码和服务器端保存的验证码进行比对
10.1.1 图形验证码简介 验证码就是在用户界面上以图形的方式显示的 一些符号,通常是字母、数字或汉字组成的一个随 机字符串,它是如何产生和验证的呢?它通常是由 服务器端程序(如Servlet)产生并保存的(保存在 session范围内),登录或注册时将用户输入的验证 码和服务器端保存的验证码进行比对
10.12图形验证码的实现 图形验证码的实现包括如下三个部分: (1)图形验证码的生成: 可通过一个 Servlet完成该任务,也可通过JSP或 JavaBean,以 Servlet为例,核心代码如下 (2)在页面中的使用 通过mg标签来显示 Servlet产生的图形验证码,代码: 其中 checkcode是产生验证码的 Servlet的访问地址 (3)验证 获取用户输入的验证码,从 session中获取保存的验证 码,对比验证
10.1.2 图形验证码的实现 图形验证码的实现包括如下三个部分: (1)图形验证码的生成: 可通过一个Servlet完成该任务,也可通过JSP或 JavaBean,以Servlet为例,核心代码如下: (2)在页面中的使用 通过img标签来显示Servlet产生的图形验证码,代码: 其中checkcode是产生验证码的Servlet的访问地址。 (3)验证 获取用户输入的验证码,从session中获取保存的验证 码,对比验证
1013案例 带图形验证码的登录模块 【例10-1】设计登录程序,要求登录时输入图形验 证码,假设正确的用户名和密码是“张三”和 “123”。登录界面如图10-1所示 强htt:/1 alost:808ge/1zn.…回 文件①)编辑¢)查看①)收藏()工具)帮助Qp 0后·②回搜索收藏夹 地址①)包htt:b00ge转到链接 用户名 密码 验证码 PE[换一张 [登录][重置 本地 Intranet
10.1.3 案例 ——带图形验证码的登录模块 【例10-1】设计登录程序,要求登录时输入图形验 证码,假设正确的用户名和密码是“张三”和 “123”。登录界面如图10-1所示
10.13案例 带图形验证码的登录模块 【设计关键】 验证码的产生和验证过程上节已经介绍,这里 不再重复;当用户点击“换一张”时应该如何处理 呢?可以刷新当前页面,验证码也会刷新,但这样 用户输入的用户名和密码也会清除,用户需要重新 输入,如何保留用户输入的信息呢?可以采用如下 方法:用户点击“换一张”时,提交给一个 Servlet 转发到当前页面,这样 request对象中参数信息不会 丢失,利用EL表达式得到它们并在文本框和密码框 中重新显示
10.1.3 案例 ——带图形验证码的登录模块 【设计关键】 验证码的产生和验证过程上节已经介绍,这里 不再重复;当用户点击“换一张”时应该如何处理 呢?可以刷新当前页面,验证码也会刷新,但这样 用户输入的用户名和密码也会清除,用户需要重新 输入,如何保留用户输入的信息呢?可以采用如下 方法:用户点击“换一张”时,提交给一个Servlet 转发到当前页面,这样request对象中参数信息不会 丢失,利用EL表达式得到它们并在文本框和密码框 中重新显示
1013案例 带图形验证码的登录模块 【实现】 (1)登录页面 Login. jsp (2)产生验证码的 Servlet(地址为 checkcode) Servlet在web,Xm中的配置信息 (3)处理登录请求的 Servlet(地址为 logcheck) Servlet在 web. xm中的配置信息 4)刷新验证码的 Servlet(地址为 changecheckcode) Servlet在 web. xm中的配置信息 【运行】《程序运行》
10.1.3 案例 ——带图形验证码的登录模块 【实现】 (1)登录页面Login.jsp (2)产生验证码的Servlet(地址为checkcode) Servlet在web.xml中的配置信息 (3)处理登录请求的Servlet(地址为logcheck) Servlet在web.xml中的配置信息 (4)刷新验证码的Servlet(地址为changecheckcode) Servlet在web.xml中的配置信息 【运行】《程序运行》
102MD5加密 在一个Web系统中,如果注册用户的密 码直接以明文存储,则数据库管理员可以查 看所有用户的密码;而且如果数据库被黑客 侵入,则会造成用户信息的泄露。为了避免 这样的情况发生,通常采用加密技术对用户 密码加密后再存储到数据库中,现在比较流 行的加密算法是MD5
10.2 MD5加密 在一个Web系统中,如果注册用户的密 码直接以明文存储,则数据库管理员可以查 看所有用户的密码;而且如果数据库被黑客 侵入,则会造成用户信息的泄露。为了避免 这样的情况发生,通常采用加密技术对用户 密码加密后再存储到数据库中,现在比较流 行的加密算法是MD5