Servlet 是一套标准的接口规范,当用户通过web请求来访问服务器时,由web容器根据配置调用我们实现的对应的servlet对象来提供服务。...同时为了方便开发,servlet标准中也提供了许多常用的工具类,比如基本的Request 和Response对象以及其他要说到的常用的类。...servlet来联合提供服务。...不同的servlet通过不同的serivce来提供服务。由于是不同的类对象和方法,不同的servlet之间不能进行信息的传递。但是有的时候需要不同的servlet之间进行数据的共享。...servlet中,提供了专门的方法来实现重定向。
问题背景:tomcat部署没有问题,可以正常访问localhost:8080,但无法访问配置的servlet,出现404错误。...问题原因: servlet编译好之后的类存放位置不对,应该放到web-inf文件夹下的classes文件夹中。
和javax.servlet.http 在javax.servlet包中定义了Servlet接口及相关的通用接口和类; 在javax.servlet.http包中主要定义了与HTTP协议相关的HttpServlet...的三种方式 定一个类实现javax.servlet.Servlet接口 定义一个类继承javax.servet.GenericServlet类 定义一个类继承javax.servlet.http.HttpServlet...addHeader() —— 向HTTP响应头中加入一项内容 sendError() —— 向客户端发送一个代表特定错误的HTTP响应状态代码 setHeader() —— 设置HTTP响应头中的一项内容...的名字,即web.xml文件中相应servlet>元素的servlet-name>子元素的值;如果没有为servlet配置servlet-name>子元素,则返回Servlet类的名字 已知实现类...的日志文件中写日志 log(String message, Throwable throwable) —— 向Servlet的日志文件中写入错误日志,以及异常的堆栈信息 ---- 总结: Servlet
404错误 ·404数字 指的是:服务器执行完客户端的请求后,返回给客户端一个执行结果的状态编码。 ·产生的原因:Web服务器(容器)根据请求地址找不到对应资源。...如: ①地址错误(拼写不正确,字母大小写错误) ②web.xml文件中的两个servlet-name>不一致 ③工程没有部署 ④Web应用程序部署结构没有遵守Servlet规范 404错误的解决方法...()的签名(方法名、参数、返回值、异常类型)是否与覆盖的父类中的方法一致 500错误 产生的原因:程序在运行时出错。...如: ①Servlet类没有继承HttpServlet或实现Servlet接口 ②web.xml文件中的servlet-class>写错 ③service方法中的代码运行时抛出异常 500错误的解决方法...·检查servlet-class中的包名、类名是否正确 ·servlet类是否继承HttpServlet或实现Servlet ·检查Servlet的service方法中的代码是否运行出错
1. servlet的生命周期 画出servlet的运行原理. 其中第3.4.5.8是servlet的生命周期 ? 生命周期有四个部分: 1.创建Servlet实例对象。...通过服务器反射机制创建Servlet对象,第一次请 求时才会创建。(默认) 2,调用Servlet对象的init()方法。...初始化Servlet的信息,init()方法只会在创建后被调用一次; 3,响应请求,调用service()或者是doGet(),doPost()方法来处理请求,这些方法是运行的在多线程状态下的。...4, 在长时间没有被调用或者是服务器关闭时,会调用destroy()方法来销毁Servlet对象。 2. 类加载器的加载流程 ? 3. 类加载流程 ? 4.类加载器的类型有几种 ? 5.
context 获取真实路径(*****) 还可以使用ServletContext对象来获取Web应用下的资源,例如在hello应用的根目录下创建a.txt文件,现在想在Servlet中获取这个资源,...class和classloader 获取类路径下资源 ? 获取类路径资源,类路径对一个JavaWeb项目而言,就是/WEB-INF/classes和/WEB-INF/lib/每个jar包!...l Class l ClassLoader: 这里要讲的是获取类路径下的资源,对于JavaWeb应用而言,就是获取classes目录下的资源。...getResourceAsStream(String path): 路径以“/”开头,相对classes路径; 路径不以“/”开头,相对当前.class文件所有路径,例如在cn.itcast.servlet.MyServlet...中执行,那么相对/classes/cn/itcast/servlet/路径; l ClassLoader类的getResourceAsStream(String path): 相对classes路径;
说一下现在创建Servlet或者是web和之前的主要区别,之前是直接创建,现在是先要创建java项目 然后通过添加支持框架变成Servlet或者web项目 下面这些截图最好都看完,因为有的地方有坑,都在后面的截图里.... 12.配置完成 13.创建servlet 14.导入servlet需要的支持包 15.将tomcat目录lib中的servlet-api.jar加入到项目中 16.出现这个界面说明加入成功...17.添加完servlet-api.jar就可以导包了 18.到此项目servlet项目已经创建好了,下面是配置tomcat到idea中 19. 20.在“+”中找到 Tomcat Server...– Local 然后双击 21.配置tomcat运行环境,这里需要注意一下右下角的fix,这个配置不好会出现404 22.我之前因为这个配置问题卡了半天,一直报404 访问这个http://localhost...:8080/MyProject_war_exploded 可以访问 访问http://localhost:8080/MyProject/TestServlet 一直报404 就是因为下面这个配置的原因
Action类访问Servlet API 本人独立博客https://chenjiabing666.github.io Struts2并未直接和Servlet API耦合,这是Struts2的一个改良之处...但是对于web应用控制器而言,不访问Servlet API是不可能,因此下面我们介绍三种方式访问Servlet API ActionContext 使用这个可以获取Servlet中HttpServletRequest...session的属性名和属性值 Map setApplication(Map application)直接传入一个Map实例,将Map实例中的key-value转换成属性名,属性值 使用 如果想要使用这个类,...API功能更加强大 实现接口访问Servlet API 实现接口访问对一个Action类的污染实在太严重了,这个是不推荐使用的,可以了解一下 可以实现的接口 ServletContextAware实现该接口的...getResponse()获取HttpServletResponse对象 ServletContext getServletContext()获取ServletContext对象 使用 我们在Action类中使用
1.servlet创建项目问题说明 servlet进行这个项目创建的时候,我们的这个web.xml里面的这个内容就是我们的这个对应内容(之前的文章里面有这个),我们复制进来之后,这个页面的左上角会有一个...maven的刷新的选项,这个一定要刷新一下; 1.我们的这个自己的java文件不是在这个org.example这个包的下面,而是在 这个java右键进行创建,如果这个位置选错,我们是找不到这个父类的;...4.1常见错误之404 这个错误的原因可能是下面的两个情况: 1)我们的这个url路径写错了:我们需要知道这个路径是什么构成的,一个是我们的这个主机加上端口号,后面的就是我们的这个smarttomcat...405 这个错误的原因就是我们的这个方法没有进行实现,就是我们继承的这个父类的里面的这个方法没有进行重写,我们的这个项目里面是需要对于这个父类里面的这个doget之类的这个方法进行重写的,如果没有进行重写就会报错...405; 或者是我们使用这个IDEA里面的这个代码自动填充的功能的时候,这个没有修改,因为这个自动填充的是进行这个super之类的调用,但是这个并不是我们想要的; 4.3常见错误之500 这个是我们的服务器内容错误
Servlet的其他相关类: ServletConfig – 代表Servlet的初始化配置参数。 ServletContext – 代表整个Web项目。...本篇博客演示:ServletConfig类 和 ServletContext 类(网页点击量统计,留言板和图片下载技术(其他类型文件类似)) ServletConfig: 它包含了Servlet的初始化参数...> 演示ServletConfig类的用法 servlet-name>ConfigServletDemoservlet-name...—–应该通过别的办法去解决,如通过方法参数传递,,数据库等等 2、自定义404页面,就是自己网站没有这个网址时,进入自己写的404页面中!...默认Servlet,当请求的路径在web.xml中没有匹配上,那么就导向该servlet,避免客户端出现404这些找不到资源的错误。
java.lang.ClassNotFoundException: javax.servlet.jsp.jstl.core.LoopTag 电脑重置后,写一个springmvc的作业的时候,使用tomcat...服务器的时候,就是突然出现 java.lang.ClassNotFoundException: javax.servlet.jsp.jstl.core.LoopTag 这个错误,以前从来没有遇上过。...亏的一直debug 找错误。♂️
然而,有时我们可能会在代码中错误地使用了其他字符作为方法名,比如空格、特殊符号或非ASCII字符。...使用这些常量而不是手动输入方法名可以避免因为拼写错误或非法字符而导致的异常。3.
Tomcat 容器创建 Servlet 类实例的过程主要涉及到 Java 的反射机制。...以下是详细的步骤和原理:加载 Servlet 类:当 Tomcat 启动时,它会读取 web.xml 配置文件,找到所有配置的 Servlet。...Tomcat 会使用类加载器(Class Loader)加载这些 Servlet 类。创建 Servlet 实例:使用 Java 反射机制来创建 Servlet 实例。...具体来说,Tomcat 会调用 Class.forName() 方法获取 Servlet 类的 Class 对象。...总结一下,Tomcat 容器通过以下步骤创建和管理 Servlet 实例:读取 web.xml 配置文件,找到所有配置的 Servlet。使用类加载器加载 Servlet 类。
Servlet入门 - ServletContext类作为全局域对象共享数据使用 ServletContext 类 image-20201112001610037 什么是 ServletContext...remove() 域对象 setAttribute() getAttribute() removeAttribute(); ServletContext 类的作用...-- ContextServlet --> servlet> servlet-name>ContextServletservlet-name> servlet-class>...com.test01.ContextServletservlet-class> servlet> servlet-mapping> servlet-name>ContextServlet...getResourceAsStream(String path) ;返回制定路径文件的流 “注意: filepath:直接从项目的根目录开始写 ” 在web项目中,将文件转换成流,有两种方式 如果文件在resources里面,使用类加载器
我们看servlet层的代码 一个类,继承HttpServlet类,重写service方法,里面用if判断,实现了一个类可以进行增删改查。...重写一个servlet类,这个就变为基类,以后对每一个表的增删改查,要写的servlet类,都继承这个基类就可以了 那么这个基类里面的代码是什么呢?...package com.servlet; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import...javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException...类,不需要继承HttpServlet 这个类了 只需要继承我们自己写的基类就可以,然后在写对应的方法就可以了。
说明: Servlet的其他相关类: ServletConfig – 代表Servlet的初始化配置参数。 ServletContext – 代表整个Web项目。...servlet-class>cn.hncu.servlets.RequestDemoservlet-class> servlet> servlet-mapping> servlet-name...request.setCharacterEncoding("utf-8");//设置用request对象中读取信息的编码格式--即下面的是按照什么编码格式把数据读取出来 //有时,我们使用转发,就需要在别的处理类中读取之前所设的编码...Tomcat直接就用iso8859-1解码了,属于解码错误,如果要显示中文,我们就把它再还原!...不过不用担心,别人已经有给我们写好了工具类,我们可以直接拿来用就可以了。下节讲哦。 ? 原文件: ? 接收到的数据: ? 可以上传一张图片给大家看看,用字符流接收到的是什么数据了。
按照下面的几个方法修复错误,随便选一种就行 让程序部署的时候,把Spring MVC相关类库复制到lib文件夹中 ?...,然后继续访问http://localhost:8080/hi/say 发现,依旧404,并且伴随每次访问,都在Server的Output窗口有一个错误日志 org.springframework.web.servlet.PageNotFound.noHandlerFound...错误,不过比刚才的404错误前进了一大步 毕竟这次Controller已经执行了,如果刚才的断点没有去掉,你可以验证一下看看 这一回是因为是“/WEB-INF/jsp/say.jsp”这个View找不到...但是如果现在这样写,会报一个很奇怪的500错误,而不是404 ?...(.jsp) 这个没啥好解释的,刚才你让Spring去哪里找这个View,就把这个View创建在哪里 如果找不到,他就简单粗暴的报404错误,根据前边我写的代码,创建位置应该入下图。
时间工具类 package cn.javabs.common.utils; import java.lang.management.ManagementFactory; import java.text.ParseException...java.time.ZonedDateTime; import java.util.Date; import org.apache.commons.lang3.time.DateFormatUtils; /** * 时间工具类...; import java.net.URLDecoder; import java.net.URLEncoder; import javax.servlet.http.HttpServletRequest...; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import org.springframework.web.context.request.RequestAttributes...import cn.javabs.common.constant.Constants; import cn.javabs.common.core.text.Convert; /** * 客户端工具类
404错误呢?...错误!... / /* 能匹配所有请求URL,会匹配到*.jsp,会出现返回jsp视图时再次进入spring的DispatcherServlet 类,...导致找不到对应的controller所以报404错。...当映射规则为 /* 时,最后返回xx.jsp也经过DispatcherServlet,它又会去找相对应的处理器,这也是控制台打印noHandlerFound,也就导致了404错误,页面更别想看到。
目录 回顾 jsp里面的缺点: 什么是servlet Servlet 进行动态网页开发的流程 例子:登录功能使用servlet 自己写servlet类的规范 关系图 参数的设置 回顾 我们已经会使用jsp...页面,写对应的代码 jsp就是一个servlet ,servlet就是一个有规范的java类 jsp--》java-->class 因为java里面的类继承了其他的东西,所以这个...总结: servlet就是一个java类,将jsp技术中的servlet单独提取出来。...参数的设置 我们在servlet里面,可能写一些固定的参数,我们可以把这些参数写到web.xml里面,之后在servlet类里面直接调用web.xml里面的参数,实现参数与servlet代码的分离,解耦...param-value>utf-8 在servlet类里面进行调用的时候,这样调用: 读取参数的代码最好写到一个servlet类里面的初始化函数里面
领取专属 10元无门槛券
手把手带您无忧上云