#java学习之路——基础阶段二(第十三篇)

zyz233 zyz233     2022-12-06     566

关键词:

我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容。

前言:此随笔主要是Java基础中的基础,相信大家对这方面肯定有着自己的理解和认识,具体详解可以参照万能的baidu,有的我就一笔带过,希望在我的学习之路上能够有大牛进行指导,也有更多的小伙伴共勉。

1.Servlet入门学习

servlet是运行在服务器端的小程序.servlet就是个接口,定义了Java类被浏览器访问到(tomcat)的规则.将来我们定义一个类调用Servlet需要复写其中的方法/

使用servlet需要定义一个实现类来完成接口的实现.这里的要实现接口中的抽象方法.

servlet生命周期:init方法,只执行一次,service方法可以多次执行,destory只执行一次,一般用于最后销毁结束.

servlet3.0的好处:可以支持注解配置,不需要再写xml配置文件.

Servlet接口有两个抽象类,像HttpServlet是对Http协议的封装,简化操作,定义类继承HttpServlet复写doget和dopost方法.

2.Http

定义了客户端与服务器端传输的格式,是基于TCP/IP 的高级协议.

这里的Version 有两种1.0 和1.1版本.区别是新版本的请求可以复用链接而旧版本每次请求都要创建新的链接.

请求行:

请求方式请  求url     请求协议 版本

      get /login.html         http/1.1

Http协议有7中请求方式常用的是get和post请求方式

get方式参数在请求行中url之后,请求的url长度有限,相对post来说是不安全的.

请求头:

客户端浏览器告诉服务器一些信息

User-Agent:浏览器告诉服务器浏览器版本 解决浏览器兼容问题

Referer:告诉服务器从哪里来  作用可以用于防盗链操作,统计工作.

请求空行:

用来分隔请求头和请求体的;

请求体(正文部分):

封装POST请求的请求参数的.

3.Request

request和response对象的原理,request和response是服务器创建的对象我们来进行使用.request是用来进行请求的,response是用来响应的.

1.request功能

获取请求行的数据

·getMethod 获取请求方法

·getcontextPath 获取请求虚拟路径

·getServletPath 获取Servlet路径

·getQueryString 获取get方式的参数请求

·String getRuquestURI 获取统一资源定位符

·StringBuffer getRequestURL 获取统一资源标识符

·getProtocol 获取协议及版本

·getRemoteAddr 获取客户机的IP地址

获取请求头的数据

·getHeader 通过请求头的值获取请求头数据

·getHeaderNames 获取所有请求头的名称

获取请求体的数据

·getReader 获取字符输入流,只能操作字符数据

·getInputStream 获取字节输入流,可以操作所有类型数据

2.其他功能

无论是get还是post请求方式都可以使用下列方法来获取请求.

·getParameter 根据参数名称获取参数值

·getParameterValues 根据参数名称获取参数值的数组

·getParameterNames 获取所有请求的参数名称

·getParameterMap 获取所有参数的Map集合

中文乱码问题的解决:

get方式:tomcat8已经解决了乱码问题

post方式:设置request编码request.setCharacterEncoding("UTF-8");

请求转发:一种服务器内部资源的跳转方式

步骤:1.通过request对象获取请求转发其的对象:RequestDispatcher getRequestDispatcher

2.使用RequestDispaycher对象来进行转发forward(ServletRequest request,SevrvletResponse response)

特点:

地址栏内容不会变,

只能转发到当前服务器的内部资源中,

转发是一次请求

共享数据:一个有作用范围的对象,可以在范围内共享数据

request域:

`setAttribute:存储数据

`getAttitude:通过键获取值

`removeAttribute:通过键移除键值对

获取ServletContext方法:getServletContext

#java学习之路——基础阶段二(第十二篇)

我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容。前言:此随笔主要是J... 查看详情

#java学习之路——基础阶段(第十篇)

我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容。前言:此随笔主要是J... 查看详情

#java学习之路——基础阶段(第十一篇)

我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容。前言:此随笔主要是J... 查看详情

#java学习之路——基础阶段二(第二篇)

我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容。前言:此随笔主要是J... 查看详情

#java学习之路——基础阶段二(第五篇)

我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容。前言:此随笔主要是J... 查看详情

#java学习之路——基础阶段二(第四篇)

我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容。前言:此随笔主要是J... 查看详情

#java学习之路——基础阶段二(第九篇)(代码片段)

我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容。前言:此随笔主要是J... 查看详情

第十三篇:html和css入门

一、HTML本质以及在WEB程序中的作用二、HTML的head内标签三、HTML的body内标签四、body内标签之lnput系列五、超链接六、图片及表格七、fieldset标签和label标签八、标签总结九、CSS选择器十、CSS之float样式十一、CSS之display样式十二、CSS... 查看详情

springcloud第十三篇|springbootadmin服务监控

本文是SpringCloud专栏的第十三篇文章,了解前十二篇文章内容有助于更好的理解本文:SpringCloud第一篇|SpringCloud前言及其常用组件介绍概览SpringCloud第二篇|使用并认识Eureka注册中心SpringCloud第三篇|搭建高可用Eureka注册中心SpringCloud... 查看详情

lua从青铜到王者基础篇第十三篇:lua调试(debug)(代码片段)

系列文章目录文章目录系列文章目录前言🌲一、Lua调试(Debug)🌳二、另一个实例🌴三、调试类型💬🌲🌳🌴🌵总结前言🌲一、Lua调试(Debug)Lua提供了debug库用于提供创建我们自定义调试器的功... 查看详情

springcloud-第十三篇zuul高层架构

...滤器来实现的1:ZuulServlet是Zuul的核心类,用来调度不同阶段的filters,处理请求,并处理异常等,路径是/zuul,可以使用zuul.servlet-path属性更改此路径2:功能类似于SpringMvc的DispatcherServlet,所有的Request都要经过它的处理 查看详情

“全栈2019”java多线程第十三章:线程组threadgroup详解

难度初级学习时间10分钟适合人群零基础开发语言Java开发环境JDKv11IntelliJIDEAv2018.3文章原文链接“全栈2019”Java多线程第十三章:线程组ThreadGroup详解下一章“全栈2019”Java多线程第十四章:线程与堆栈详解学习小组加入同步学习... 查看详情

第十三篇js操作table表格

JS操作table表格这节课难度可能高一点,因为没有提前解释if判断、for循环。这节课是直接把这两样用上了,老师先简单介绍一下:if,判断语句,判断就很简单了嘛,假如说1=1(1等于1),当然是真的了对吧,那么1=2呢,那就是假的... 查看详情

第十三篇jquerymobile

1.创建Button  <button>按钮</button>  <inputtype="button"value="按钮"/ >  <ahref="#"class="ui-btnui-shadow(阴影)">按钮</a>//一排可以放多个按钮ui-btn-inline(横向排列)  <divclass="controlg 查看详情

#java学习之路——基础阶段(第一篇)

  我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容。前言:此随笔主... 查看详情

#java学习之路——基础阶段(第七篇)

我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容。前言:此随笔主要是J... 查看详情

hadoop学习之路(二十三)mapreduce中的shuffle详解

概述1、MapReduce中,mapper阶段处理的数据如何传递给reducer阶段,是MapReduce框架中最关键的一个流程,这个流程就叫Shuffle2、Shuffle:数据混洗——(核心机制:数据分区,排序,局部聚合,缓存,拉取,再合并排序)3、具体来... 查看详情

javaweb自学之路

一、Java学习路线 第一阶段:Java基础,包括java语法,面向对象特征,常见API,集合框架;(基础) 第二阶段:java界面编程,包括AWT,事件机制,SWING,(不常用)这个部分也可以跳过,用的时候再看都能来及; 第三阶... 查看详情