自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Anthony_tester的博客

公众号:AnthonyTestDevHouse,探索从QA角色到开发角色的转换之路(Q群574103281)

  • 博客(59)
  • 收藏
  • 关注

原创 JavaWeb学习-Mysql事务-1-事务简介和JDBC模拟事务操作

继续来学习,这篇开始学习数据库中事务的概念和简单的JDBC操作事务,先来看看Mysql中事务的命令,然后利用前面写的DBUtils工具类来模拟转账的过程,通过这个理解mysql上事务的基本操作。1.事务的概念事务指逻辑上的一组操作,组成这组操作的各个单元,要么全部成功,要么全部不成功。例如: 用户A 给用户B转账,对应执行如下两条sql语句update account set mone...

2019-05-31 15:42:55 419

原创 JavaWeb学习-MVC基础开发系列-7-登录验证错误用户名或密码

前面一篇我们验证了注册页面,是否存在已经注册过的用户名这个场景。现在这篇,我们来做一下,登录页面中,用户输入用户名和密码不匹配的场景。只要用户输入用户名和密码,在数据库中查询不到,就在登录页面提升用户名或密码不正确。1.新建自定义异常类前面我们在exception包下新建了一个用户存在的异常类,这里我们新建一个UsersException.java类,这个好了,其实可以代替前面一篇的Use...

2019-05-31 15:42:43 2337

原创 JavaWeb学习-MVC基础开发系列-6-验证用户名是否存在

继续来做用户注册场景的验证问题,我们还有一个场景没有做,就是注册的时候没有判断用户名是否存在,如果存在就提醒用户换一个用户名再注册。1.dao接口添加一个根据用户名查找方法package com.anthony.dao;import com.anthony.domain.User;public interface UserDao { /** * 添加用户信息 ...

2019-05-30 23:35:16 1195

原创 JavaWeb学习-MVC基础开发系列-5-用户注册校验实现

这篇来看看用户注册表单中,如果用户数输入内容和字段要求不符合,弹出对应错误消息提醒。这个过程要怎么实现呢,1.新写一个实体类这个实体类,就是一个UserForm.java,里面包含注册表单的一切属性,还有一个map集合,用来存放各种错误提示。package com.anthony.domain;import java.io.Serializable;import java.te...

2019-05-30 22:03:28 496

原创 JavaWeb学习-MVC基础开发系列-4-用户注销功能

前面一篇实现了用户登录过程,这篇来学习下如何把用户注销。用户注销,实际上就是把session对象给销毁。但是我们前面一篇没有使用session对象,所以这里我们先把前面文章使用request域对象保存user对象改成存储在session中,然后来看用户注销功能的实现过程。1.优化前一篇代码前面一篇,我们把用户登录成功的用户对象存在request域中,这个有两点不好。第一,存sessi...

2019-05-29 22:39:15 714

原创 JavaWeb学习-MVC基础开发系列-3-用户登录功能

这篇来实现用户登录功能,前面我们把所有类和接口都写好了。我们可以根据用户注册的写的过程,来完成用户登录。分别在每个层中添加登录相关的方法和逻辑。1.在dao包的接口下新加findUser方法package com.anthony.dao;import com.anthony.domain.User;public interface UserDao { /** * 添加用...

2019-05-29 21:20:46 535

原创 JavaWeb学习-MVC基础开发系列-2-用户注册功能

前面一篇,我们把开发练习的环境和代码都准备好了,这篇我们直接来写用户注册的代码。先来分析一下用户注册的页面,我们需要给用户提供一个页面,点击注册链接,进入到注册表单页面。用户输入用户名和密码,点击注册,提示用户是否完成注册。1.在service层写一个注册接口接着前面一篇代码,前面我们写完了dao层的接口和实现类。这里我们在service下新建一个接口,里面就一个注册方法。pa...

2019-05-29 18:31:48 921 1

原创 JavaWeb学习-MVC基础开发系列-1-MVC简介开发环境准备

这篇来学习下MVC模型和分层思想,然后准备开发环境,后面我们来练习用户注册和登录的开发练习。1 MVC模型在软件开发行业,MVC几乎人人都知道这个模型,这里我们来看看JavaWeb开发中的MVC模型JavaWeb MVC = JSP +Servlet + JavaBeanM: Model模型,主要就是javaBean|四种作用域V:View 师徒,就是JSP页面C:Co...

2019-05-29 18:31:27 566

原创 JavaWeb学习-JSP系列-8-JSTL介绍

本篇来学习JSTL,前面我们使用EL,但是EL有缺点,EL只能做简单代码处理,一般用来输出,判断是否为空,三元运算符等。如果是逻辑判断,EL就无法处理,这个时候我们需要使用JSTL。1.什么是JSTLJSTL:JavaServerPages Standand Tag Library,JSP标准标签库。2.JSTL的作用使用JSTL实现JSP页面中逻辑处理,如判断,循环等。...

2019-05-28 23:27:46 270

原创 JavaWeb学习-JSP系列-7-EL获取数据和运算

这篇来学习下EL,了解为什么JSP中为什么要使用EL?EL表达式:expression language 表达式语言,用来简化jsp中java代码开发。它不是一种开发语言,是jsp中获取数据一种规范。1.EL获取数据举例场景:有两个jsp文件,分别是1.jsp和2.jsp, 我们在1.jsp中写代码,请求转发到2.jsp,然后再2.jsp中写获取属性值,打印到页面上。1.jsp代...

2019-05-28 20:19:37 544

原创 JavaWeb学习-JSP系列-6-JSP的9个内置对象

本篇来学习JSP的9个内置对象,这个比6个动作要重要多。前面我们在练习jsp的代码中,其实已经使用了好几个内置对象,例如request和response和out和session。本篇来学习下,重点是练习下其他我们没有了解过的对象。1.JSP的9大内置对象JSP的9大内置对象 对象 类型 说明 request javax.servlet.http.HttpServle...

2019-05-27 21:03:41 278

原创 JavaWeb学习-JSP系列-5-JSP的6个动作

这篇来学习JSP的6个动作,虽然实际开发过程中JSP的6个动作几乎没有怎么使用,这里简单来学习一下。1.JSP的6个动作下面这个表格是JSP的6个动作JSP6个动作 <jsp:include > 动态包含 <jsp:forward > 请求转发 <jsp:param > 设置请求参数 <jsp:useBean &...

2019-05-27 20:24:24 278

原创 JavaWeb学习-JSP系列-4-JSP的3个指令

这篇来学习JSP的三个指令,JSP中有一个用数字来总结JSP学习的内容:3个指令,6个动作,9大对象。先来看看什么是指令?JSP指令(directive)是为JSP引擎而设计的,它们并不直接产生任何可见的输出,只是告诉引擎如何处理JSP页面。JSP2.0规范中定义了3个指令。page include taglib,本篇先来看看page指令。1.指令语法语法:<%@ 指令...

2019-05-26 11:21:04 257

原创 JavaWeb学习-JSP系列-3-JSP基本语法

本篇开始学习JSP的语法和相关指令和对象,前面做了几个jsp文件,以及有一些语法基础。下面来简单介绍一下JSP的基础语法,用代码例子来演示。1.JSP模板元素这个网页的静态内容,例如html的标签和文本2.JSP的脚本2.1小脚本<%java代码%>2.2 表达式<%= 2+3> 等价于 out.print(2+3)这里通过前面练习,&l...

2019-05-25 23:34:05 392

原创 JavaWeb学习-JSP系列-2-JSP最佳实践

这篇来讨论下JSP的最佳实践,也就是JSP中应该写什么代码,不应该写什么代码。JSP本质是Servlet,那么我们就要考虑什么时候用Servlet什么时候使用jsp。有些代码确实在servlet中实现,也可以在jsp文件中实现,本篇就是来了解下JSP最佳实践。1.全部代码写成jsp,模拟用户登录成功。三个jsp页面,分别是登录框和处理判断登录是否成功页面和登录成功,欢迎用户页面。这...

2019-05-25 21:56:40 287

原创 JavaWeb学习-JSP系列-1-JSP概述和JSP原理

前面算是把Servlet学习完了,接下来学习一个JSP,JSP比较简单。不止看到一次有人说过,学习JavaWeb,其实重点就是学习Servlet和JSP,什么SSH SSM框架都是在基础只要的工具学习,加快开发速度的。1.1 什么是JSPJSP全称是Java Server Pages, 它和servlet技术一样,都是SUN公司定义的一种用于开发动态web资源的技术。JSP实际...

2019-05-25 17:57:49 417

原创 JavaWeb学习-会话管理系列-10-getSession()的原理

我们在AddCart.java和ShowCart.java中都用到了req.getSession()方法。这个方法一共调用了两次,是不是就创建了两个Session对象呢,从打印getId()来看,是调用同一个session对象。服务器怎能知道getSession()是调用同一个对象呢。带着这个问题,我们就来学习下getSession()的原理。HttpSession req...

2019-05-23 16:03:21 1569 1

原创 JavaWeb学习-会话管理系列-9-Session练习-HttpSession API简介

前面一篇模拟购物车实现过程,我们对HttpSession有了一定的了解。上一篇已经使用了req对象得到session对象方法和设置属性和得到属性方法。本篇来简单阅读HttpSession接口文档,重点介绍几个常用的方法。1.为什么要学习HttpSession1)它也是一个域对象:session servletContext request,目前学了三个域对象2)同一个...

2019-05-22 20:23:18 499

原创 JavaWeb学习-会话管理系列-8-Session练习-模拟购物车实现过程

前面学习cookie的时候,做了一个模拟浏览历史纪录的练习,这篇学习session,我们来再前面知识基础上,做一个模拟购物车的场景。前面文章中Book.java和DBUtil.java都需要拿过来使用。1.文件结构ShowAllBooksServlet.java是显示全部商品列表页面,提供点击一本书,点击效果就是模拟添加购物车功能。AddCart.java就是处理添加购物车逻辑,sho...

2019-05-21 19:14:44 1551

原创 JavaWeb学习-会话管理系列-7-HttpSession原理

这篇开始学习Session技术,Session是会话管理的第二个技术,主要特点是由服务端创建,保存在服务端。每一个浏览器,理论上独占一个session会话。本篇来简单了解下session的原理的代码练习体验下session。1.session定义在WEB开发中,服务器可以为每个用户浏览器创建一个会话对象(session对象),注意,默认请情况下,一个浏览器独占一个session对象。因此,...

2019-05-21 19:14:36 470

原创 JavaWeb学习-会话管理系列-6-cookie练习-浏览历史记录

本篇继续来做一个cookie的经典练习场景,如何显示用户浏览器网站上的商品的历史纪录。这个功能很多购物网站上都有,我们来模拟这个场景的实现过程。例如一个卖书的网站,我们定义这个网站有4本书,然后我们历史纪录只显示用户最近浏览的三本书,当然也可能用户只浏览了一本,两本或者没有一本书,这些场景都需要考虑。需求场景上面就是用户第一次打开这个卖书网站,这个时候没有浏览任何一本书详情页,所以没有...

2019-05-20 19:47:27 498

原创 JavaWeb学习-会话管理系列-5-cookie练习-记住用户名

这篇来做一个cookie的练习场景,就是如何利用cookie来实现登录过程中记住用户名的过程。我们在很多web网站中的登录页面,看到有一个勾选项,叫记住登录。一般记住登录有时间周期,有七天,一个月等。只要用户在浏览器登录一次,第二天或者过几天再次打开登录页面,发现用户名和密码都自动填充了,只需要点击登录。我们来模拟登录页面记住用户名的情况,其实csdn就有这个记住用户名和密码。需求实现登录...

2019-05-18 10:53:25 793

原创 JavaWeb学习-会话管理系列-4-cookie属性2

继续来学习cookie的属性和相关的set和get方法,本篇来讨论一个细节,为什么请求回来找到cookie对象,使用getPath和getDomain都是返回null这个值。1.文件代码web.xml内容<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/...

2019-05-17 23:22:52 238

原创 JavaWeb学习-会话管理系列-3-cookie属性和方法练习

本篇来具体学习cookie类下一些属性和方法的练习,例如getName()、getValue()、addCookie()等方法。然后了解下setPath()的作用,给cookie设置了path,其他servlet可以访问cookie的数据。1.Eclipse项目结构先在Eclipse项目创建一个web动态项目,名称为Cookie01,然后创建一个CookieDemo1.java se...

2019-05-17 15:54:16 294

原创 JavaWeb学习-会话管理系列-2-cookie API介绍

在认识cookie之前,我们来打开j2ee chm文档,先来阅读下cookie的API介绍,先从整体上对cookie有一个基本掌握。然后我们接下来根据cookie属性和相关代码方法进行demo演示。1. cookie API内容介绍打开j2ee chm文档,搜索cookie,cookie是javax.servlet.http包下的一个公共类。其中可以看到以下文字描述1)创建一个coo...

2019-05-16 22:38:01 488

原创 JavaWeb学习-会话管理系列-1-会话概述

开始学习一个新系列,会话管理,也就是cookis和session两个对象。还是接着前面tomcat和servlet的知识继续学习下去,好好了解以下cookis和session技术。本篇来了解下会话管理的基本概述,后面文章展开具体代码学习。1.什么是会话会话可以简单理解为:用户开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话。点击多个链接不管是新...

2019-05-16 20:35:48 686

原创 JavaWeb学习-Servlet系列-25-Request请求包含和解决乱码问题

前面介绍了请求转发以及转发的特点,还有转发过程中可以共享数据,这篇来学习一个getRequestDispatcher()对象的另外一个方法,叫请求包含。请求包含,效果上来说和请求转发是一样,也能同时执行Demo3中和Demo4的代码和共享属性。第二点来看看get和post方法如何解决乱码问题。1.请求包含ServletDemo3.javapackage com.anthony.ser...

2019-05-16 20:35:27 279

原创 JavaWeb学习-Servlet系列-24-Request请求转发和获取非表单数据

前面介绍Request对象获取表单数据,这篇先来介绍下请求的转发,然后介绍几个方法,是关于获取非表单数据,就是请求过程中设置属性,获取属性,删除属性这三个方法。1.请求转发准备两个ServletDemo对象,分别请求URI是/demo3和/demo4, 在Demo3中请求转发到Demo4处理。ServletDemo3.javapackage com.anthony.servlet...

2019-05-16 20:35:19 450

原创 JavaWeb学习-Servlet系列-23-HttpServletRequest通过字节流方式获取表单数据

这篇来学习获取表单数据的第三个方法,getInputStream,返回是一个输入流对象,读取的是时候需一行一行去读,但是这个获取内容,如果表单数据有中文,很容易发生编码的问题。1.ServletDemo4.java内容package com.anthony.servlet;import java.beans.IntrospectionException;import java.be...

2019-05-15 22:55:39 1913 2

原创 JavaWeb学习-Servlet系列-22-HttpServletRequest获取表单内容并封装成高级对象

这篇还是来学习HttpServletRequest如何获取表单内容的相关方法,本篇重点学习getParameterMap()这个方法,就是得到表单里全部键值对,返回一个map对象。我们实际开发中,得到表单数据肯定不是为了打印到控制台,而是存入到数据库。在存入数据库之前,我们拿到零散的数据去操作效率很低,一般我们都要封装成高级对象(Java Bean),然后通过JDBC存入数据库。本篇具体来学习如何...

2019-05-15 18:52:43 1554 1

原创 JavaWeb学习-Servlet系列-21-HttpServletRequest获取请求正文方法介绍(二)

继续来做HttpServletRequest获取请求正文的方法练习,本篇就学习一个方法getParameterNames(),也就是获取表单中所有name属性的值的一个方法,例如我们注册表单中的userName,pwd,hobby等。1.register.html内容<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE ht...

2019-05-15 18:50:53 602

原创 JavaWeb学习-Servlet系列-20-HttpServletRequest获取请求正文方法介绍(一)

前面分别说过了获取请求消息行和请求消息头的方法,这篇来介绍内容比较多的获取请求正文的相关方法。什么是请求正文呢,如果是get请求,类似?name=anthony就是请求正文,如果是post请求,例如表单注册,这个表单里面全部元素就是请求正文。本篇先来写一个表单,然后介绍获取表单内属性值的方法。1.写一个注册表单在Eclipse项目下WebContent下新建一个register.html页...

2019-05-14 22:39:09 1054

原创 JavaWeb学习-Servlet系列-19-HttpServletRequest获取请求头内容

这一篇来学习HttpServletRequest对请求头的相关操作,其实一共就两个方法学习,第一个是得到请求头中具体属性的值,第二个方法就是得到全部属性,返回是一个枚举类型。1.得到某一个请求头中的name的值这里name我通过User-Agent来演示,这个值告诉我们请求的浏览器是什么类型,主要可以明显看出来是IE,Firefox,Chrome。package com.ant...

2019-05-14 21:24:49 1293

原创 JavaWeb学习-Servlet系列-18-HttpServletRequest对象获取请求消息行相关方法介绍

前面算是把HttpServletResponse对象以及常用的方法给介绍完了,这篇开始学习HttpServletRequest对象以及相关方法,和前面一样,无法也就是操作 请求消息行,请求消息头,请求正文三部分的方法学习。这一篇来学习请求消息行的相关方法。1.请求消息行相关方法在请求消息行中,需要掌握下面几个方法getMethod()getRequestURL()getReque...

2019-05-14 21:24:40 521

原创 JavaWeb学习-Servlet系列-17-重定向

本篇来学习下重定向是如何实现的,我们这里来模拟这样一个业务场景,有些页面点击一些链接,里面跳转到登陆页面。这个场景就是我们本篇要模拟的重定向,我们来看看代码是如何实现的。1.ServletDemo类准备我写两个ServletDemo3.java和ServletDemo4.java, demo3是我们前面介绍的验证码的登陆页面。demo4是本篇的重定向代码。package com...

2019-05-14 11:08:36 797 1

原创 JavaWeb学习-Servlet系列-16-客户端不缓存和刷新功能

接着前面的验证码的中代码,继续本篇的练习和优化代码。前面一篇其实有一点点小问题,鼠标光标定位在浏览器地址栏,键盘上敲回车,其实不会发生验证码的变化,这是因为浏览器有缓存。然后介绍一个刷新功能,在setHead方法中使用属性refresh。1.告诉客户端不缓存在写HttpServletResponse对象简介这篇的时候,我把setHead()中不缓存相关三个方法都列举出来了,我们这里把...

2019-05-13 23:14:47 316

原创 JavaWeb学习-Servlet系列-15-自定义验证码

这篇来做一个练习题,很有意思,就是实现网页上登录旁边一个验证码的过程。当然实际开发过程中,网上可以找到很多别人开发好的jar包,直接使用别人的验证码成果就可以。1.ServletDemo3.java代码package com.anthony.servlet;import java.awt.Color;import java.awt.Font;import java.awt....

2019-05-13 20:48:18 303

原创 JavaWeb学习-Servlet系列-14-HttpServletResponse文件下载举例

本篇来学习响应对象中一个案例场景,下载文件。就是打开浏览器,发送请求,就触发文件保存到本地的效果。场景分析,为了演示下载文件,我随便找到一个图片,命名问J2EE图片.jpn并且放在Eclipse项目的src路径下。1.需求分析来分析一下这个需求,图片是放在src路径下,部署到tomcat服务器之后就是在WEB-INF/classes/J2EE图片.jpg。图片文件不像文本文件,所以我们需要...

2019-05-11 23:44:15 1077

原创 JavaWeb学习-Servlet系列-13-HttpServletResponse字节流输出

前面一篇,我们介绍了编码设置,还有一个方法PrintWriter,这个对象就是一个字符流操作,直接把内容通过字符流方式写入到response对象,在响应正文的操作中,还有一个叫字节流的对象ServletOutputStream, 其实就是继承了OutputStream类。1.默认编码字节流方式package com.anthony.servlet;import java.io.IOE...

2019-05-11 22:46:01 4555

原创 JavaWeb学习-Servlet系列-12-HttpServletResponse编码设置

前面文章我们介绍了HttpServletResponse的响应消息行和响应消息头的一部分方法的练习,这篇,来介绍响应信息正文的相关方法。本篇主要介绍响应编码的设置和常见问题。1.没有设置响应编码,中文内容在浏览器会显示问号格式我们需要给网页输出一个字符串内容,这里需要用到HttpServletResponse的父类的一个方法getWriter()。利用这个方法,例如我们可以把“你好”输出在...

2019-05-11 21:19:00 2975

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除