JavaWeb
渗透
fanfjaiynu
汪
展开
-
ServletContext获取文件的真实(服务器)路径
package com.web.sevletcontext;import javax.servlet.ServletContext;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import ja...原创 2020-03-05 20:38:25 · 428 阅读 · 0 评论 -
ServletContext域对象:共享数据
setAttribute(String name,Object value)getAttribute(String name)removeAttribute(String name)ServletContext对象范围:所有用户所有请求的数据设置数据:package com.web.sevletcontext;import javax.servlet.ServletConte...原创 2020-03-05 20:32:53 · 306 阅读 · 0 评论 -
SevletContext获取MIME类型
功能:获取MIME类型:MIME类型:在互联网通信过程中定义的一种文件数据类型格式: 大类型/小类型 text/html image/jpeg获取:String getMimeType(String file)package com.web.sevletcontext;import javax.servlet.ServletContext;import javax.s...原创 2020-03-05 20:21:39 · 1295 阅读 · 0 评论 -
SevletContext获取
ServletContext对象:概念: 代表整个web应用,可以和程序的容器(服务器)来通信获取:通过request对象获取request.getServletContext();通过HttpServlet获取this.getServletContext();package com.web.sevletcontext;import javax.servlet.Servlet...原创 2020-03-05 20:05:33 · 86 阅读 · 0 评论 -
Response输出字符字节数据
1.服务器输出字符数据到浏览器 * 步骤: 1. 获取字符输出流 2. 输出数据 * 注意: * 乱码问题: 1. PrintWriter pw = response.getWriter();获取的流的默认编码是ISO-8859-1 2. 设置该流的默认编码 3. 告诉浏览器响应体使用的编码 //简单的形式,设置编码...原创 2020-03-05 19:57:56 · 456 阅读 · 0 评论 -
Response路径
路径写法:1. 路径分类 1. 相对路径:通过相对路径不可以确定唯一资源 * 如:./index.html * 不以/开头,以.开头路径 * 规则:找到当前资源和目标资源之间的相对位置关系 * ./:当前目录 * ../:后退一级目录 2. 绝对路径:通过绝对路径可以确定唯一资源 * 如:http://localhost/day15/respon...原创 2020-03-05 19:43:58 · 284 阅读 · 0 评论 -
Response重定向
Response对象功能:设置响应消息1. 设置响应行 1. 格式:HTTP/1.1 200 ok 2. 设置状态码:setStatus(int sc) 2. 设置响应头:setHeader(String name, String value) 3. 设置响应体: * 使用步骤: 1. 获取输出流 * 字符输出流:PrintWriter getWriter() ...原创 2020-03-05 19:39:15 · 2179 阅读 · 0 评论 -
HTTP响应消息
HTTP协议:1. 请求消息:客户端发送给服务器端的数据 * 数据格式: 1. 请求行 2. 请求头 3. 请求空行 4. 请求体2. 响应消息:服务器端发送给客户端的数据 * 数据格式: 1. 响应行 1. 组成:协议/版本 响应状态码 状态码描述 2. 响应状态码:服务器告诉客户端浏览器本次请求和响应的一个状态。 1. 状态码...原创 2020-03-05 19:08:35 · 198 阅读 · 0 评论 -
Request共享数据(域对象)
共享数据:* 域对象:一个有作用范围的对象,可以在范围内共享数据* request域:代表一次请求的范围,一次请求访问多个资源,即转发,一般用于请求转发的多个资源中共享数据* 方法: 1. void setAttribute(String name,Object obj):存储数据 2. Object getAttitude(String name):通过键获取值 3. void re...原创 2020-03-03 21:56:23 · 1434 阅读 · 0 评论 -
Request请求转发
请求转发: 一种在服务器内部的资源跳转方式1. 步骤: 1. 通过request对象获取请求转发器对象:RequestDispatcher getRequestDispatcher(String path) 2. 使用RequestDispatcher对象来进行转发:forward(ServletRequest request, ServletResponse response) 2. ...原创 2020-03-03 21:45:06 · 163 阅读 · 0 评论 -
Request获取请求参数通用方式
获取请求参数通用方式: 不论get还是post请求方式都可以使用下列方法来获取请求参数1. String getParameter(String name):根据参数名称获取参数值 username=zs&password=1232. String[] getParameterValues(String name):根据参数名称获取参数值的数组 hobby=xx&hob...原创 2020-03-03 21:22:37 · 261 阅读 · 0 评论 -
Request获取请求体数据
获取请求体数据:**请求体:**只有POST请求方式,才有请求体,在请求体中封装了POST请求的请求参数步骤:1. 获取流对象 * BufferedReader getReader():获取字符输入流,只能操作字符数据 * ServletInputStream getInputStream():获取字节输入流,可以操作所有类型数据2. 再从流对象中拿数据<!DOCTYPE...原创 2020-03-03 20:44:05 · 1869 阅读 · 0 评论 -
Request获取请求头数据
获取请求头数据方法:Enumeration getHeaderNames():获取所有的请求头名称String getHeader(String name):通过请求头的名称获取请求头的值package com.web.request;import javax.servlet.ServletException;import javax.servlet.annotation.WebSe...原创 2020-03-03 20:21:12 · 2633 阅读 · 0 评论 -
Request获取请求行数据
获取请求行数据方法:获取请求方式 :GETpackage com.web.request;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http...原创 2020-03-03 18:47:10 · 250 阅读 · 0 评论 -
Request介绍
1. request对象和response对象的原理request和response对象是由服务器创建的。我们来使用它们request对象是来获取请求消息,response对象是来设置响应消息2. request对象继承体系结构: ServletRequest -- 接口 | 继承 HttpServletRequest -- 接口 | 实现 org.apache...原创 2020-03-03 17:53:09 · 170 阅读 · 0 评论 -
HTTP概述—请求头和请求体
概念:Hyper Text Transfer Protocol 超文本传输协议传输协议: 定义了,客户端和服务器端通信时,发送数据的格式特点:基于TCP/IP的高级协议默认端口号:80基于请求/响应模型的:一次请求对应一次响应无状态的:每次请求之间相互独立,不能交互数据历史版本:1.0:每一次请求响应都会建立新的连接1.1:复用连接请求消息数据格式:1. 请求行...原创 2020-03-03 17:28:53 · 15281 阅读 · 1 评论 -
Servlet体系结构及相关配置
Servlet的体系结构 Servlet -- 接口 | GenericServlet -- 抽象类 | HttpServlet -- 抽象类* GenericServlet:将Servlet接口中其他的方法做了默认空实现,只将service()方法作为抽象 * 将来定义Servlet类时,可以继承GenericServlet,实现service()方法即可* ...原创 2020-03-03 16:12:34 · 81 阅读 · 0 评论 -
IDEA与Tomcat的相关配置
1. IDEA会为每一个tomcat部署的项目单独建立一份配置文件 * 查看控制台的log:Using CATALINA_BASE: "C:\Users\Alolita\.IntelliJIdea2019.3\system\tomcat\Tomcat_9_0_31_servlet"2. 工作空间项目 和 tomcat部署的web项目 * tomcat真正访问的是“to...原创 2020-03-02 17:40:37 · 116 阅读 · 0 评论 -
Servlet注解配置
* 好处: * 支持注解配置。可以不需要web.xml了。 * 步骤: 1. 创建JavaEE项目,选择Servlet的版本3.0以上,可以不创建web.xml 2. 定义一个类,实现Servlet接口 3. 复写方法 4. 在类上使用@WebServlet注解,进行配置 * @WebServlet("资源路径")...原创 2020-03-02 17:29:03 · 142 阅读 · 0 评论 -
Servlet生命周期方法
Servlet中的生命周期方法: 1. 被创建:执行init方法,只执行一次 * Servlet什么时候被创建? * 默认情况下,第一次被访问时,Servlet被创建 * 可以配置执行Servlet的创建时机。 * 在<servlet>标签下配置 1. 第一次被访问时即访问浏览器时,创建 * <load-on...原创 2020-03-02 17:22:16 · 580 阅读 · 0 评论 -
Servlet快速入门
概念: 运行在服务器端的小程序Servlet就是一个接口,定义了Java类被浏览器访问到(tomcat识别)的规则。将来我们自定义一个类,实现Servlet接口,复写方法。快速入门:1. 创建JavaEE项目2. 定义一个类,实现Servlet接口 * public class ServletDemo1 implements Servlet3. 实现接口中的抽象方法4. 配置...原创 2020-03-02 17:04:43 · 97 阅读 · 0 评论 -
Tomcat与IDEA集成创建web项目
* 静态项目和动态项目: * 目录结构 * java动态项目的目录结构: -- 项目的根目录 -- WEB-INF目录: -- web.xml:web项目的核心配置文件 -- classes目录:放置字节码文件的目录 -- lib目录:放置依赖的jar包将Tomcat集成到IDEA中,并且创建JavaE...原创 2020-03-02 13:12:57 · 338 阅读 · 0 评论 -
Tomcat部署项目方式
部署项目的方式:1、直接将项目放到webapps目录下即可。* /first:项目的访问路径-->也叫虚拟目录* 简化部署:将项目打成一个war包,再将war包放置到webapps目录下。 * war包会自动解压缩2、(在server.xml部署很不安全) 配置conf/server.xml文件 在<Host>标签体中配置 <Context docB...原创 2020-03-02 11:31:55 · 92 阅读 · 0 评论 -
Tomcat安装卸载启动
Tomcat:web服务器软件下载:http://tomcat.apache.org/安装:解压压缩包即可。卸载:删除目录就行了启动:Windows下双击运行bin/startup.bat该文件即可访问:浏览器输入:http://localhost:8080 回车访问自己;http://别人的ip:8080 访问别人可能遇到的问题:黑窗口一闪而过:原因: 没有正确配置JAVA...原创 2020-03-02 10:29:14 · 196 阅读 · 0 评论 -
web相关概念
1、软件架构C/S:客户端/服务器端B/S:浏览器/服务器端2、资源分类静态资源:所有用户访问后,得到的结果都是一样的,称为静态资源.静态资源可以直接被浏览器解析如: html,css,JavaScript动态资源:每个用户访问相同资源后,得到的结果可能不一样。称为动态资源。动态资源被访问后,需要先转换为静态资源,在返回给浏览器如:servlet/jsp,php,asp…3、网...原创 2020-03-02 10:02:31 · 126 阅读 · 0 评论 -
Jsoup(3)
快捷查询方式:selector:选择器使用的方法:Elements select(String cssQuery)语法:参考Selector类中定义的语法xml文件:selector演示:XPath:XPath即为XML路径语言,它是一种用来确定XML(标准通用标记语言的子集)文档中某部分位置的语言使用Jsoup的Xpath需要额外导入jar包。xpath演示:...原创 2020-03-01 19:04:49 · 111 阅读 · 0 评论 -
Jsoup(2)
对象的使用:Jsoup:工具类,可以解析html或xml文档,返回Document* parse:解析html或xml文档,返回Document * parse(File in, String charsetName):解析xml或html文件的。 * parse(String html):解析xml或html字符串 * parse(URL url, int timeoutMi...原创 2020-03-01 18:54:14 · 90 阅读 · 0 评论 -
Jsoup(1)
Jsoup:jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。步骤:导入jar包获取Document对象获取对应的标签Element对象获取数据student.xml...原创 2020-03-01 17:56:15 · 107 阅读 · 1 评论 -
XML解析
解析:操作xml文档,将文档中的数据读取到内存中、操作xml文档解析(读取):将文档中的数据读取到内存中写入:将内存中的数据保存到xml文档中。持久化的存储解析xml的方式:DOM:将标记语言文档一次性加载进内存,在内存中形成一颗dom树优点:操作方便,可以对文档进行CRUD的所有操作缺点:占内存SAX:逐行读取,基于事件驱动的。优点:不占内存。缺点:只能读取,不能增删改x...原创 2020-03-01 17:38:30 · 86 阅读 · 0 评论 -
XML约束
约束:规定xml文档的书写规则作为框架的使用者(程序员):能够在xml中引入约束文档能够简单的读懂约束文档分类:DTD:一种简单的约束技术Schema:一种复杂的约束技术DTD:引入dtd文档到xml文档中* 内部dtd:将约束规则定义在xml文档中* 外部dtd:将约束的规则定义在外部的dtd文件中 * 本地:<!DOCTYPE 根标签名 SYSTEM "dtd文...原创 2020-03-01 17:32:22 · 107 阅读 · 0 评论 -
XML概念
XML:概念:Extensible Markup Language 可扩展标记语言可扩展:标签都是自定义的。 功能:存储数据(1、配置文件 2、在网络中传输)xml与html的区别xml标签都是自定义的,html标签是预定义。xml的语法严格,html语法松散xml是存储数据的,html是展示数据语法:基本语法:xml文档的后缀名 .xmlxml第一行必须定义为...原创 2020-03-01 16:05:15 · 255 阅读 · 0 评论