Servlet使用过程中常见问题总结

简介: Servlet使用过程中常见问题总结

💕"Echo"💕

作者:Mylvzi

文章主要内容:Servlet使用过程中常见问题总结

前言:笔者在学习Servlet的过程中遇到了很多问题,这里总结一下

1.乱码问题

如果我们在响应报文中传输中文"你好",那么在浏览器之中显示就是"??",表示乱码

想要解决乱码问题,我们首先要清楚乱码是如何产生的,一般来说,如果出现了乱码问题,就说明有多个过程参与了编码,并且编码的方式不同,比如构造数据时使用utf8,解析数据时使用gbk,这样就会产生乱码的问题

具体来说可以通过一下两个步骤来解决乱码问题:

  1. 梳理清楚,程序在运行的过程中,都有哪些过程参与了编码
  2. 明确这些过程的具体编码方式

首先,在构造数据时是通过idea进行构造数据的,idea的编码方式是utf8

解析数据是通过浏览器进行解析的,浏览器的编码方式默认是和操作系统一致的,我的操作系统是windows简体中文版,默认的编码方式是gbk,所以浏览器的编码方式也是gbk,所以会产生乱码问题

要想解决乱码问题,就要统一编码方式,我们建议将gbk改为utf8(更容易),只需在响应报文的头部中进行设置即可

这样响应报文中的头部中就明确了编码方式为utf8,重新启动程序

乱码问题成功解决

2.出现404

404表示用户访问的资源不存在,一般来说,出现404的情况有两种:

1.写错了URL

URL 由ContextPath 和 ServletPath组成,输错,就会产生404

2.webxml配置错误

当web.xml文件中的代码输入错误时,也会触发404

3.出现405

405表示方法不允许,这在初学期经常出现,比如请求报文的方法是GET,但是没有重写doGet方法就会触发405

还有一种情况也可能会出现405

没有删除 super.doGet(req, resp);

如果没有删除,此时代码就会执行父类中的方法,同时也是方法不允许(因为父类方法中没有重写任何方法)

4.出现500

出现500,服务器内部错误,一般是你写的服务器代码中没有正确处理好异常

比如,在代码中添加:

String s = null;
        System.out.println(s.length());

报错:

这条消息还告诉你出错的异常类型以及所在的位置

5.出现空白界面

出现空白界面就证明没有响应报文被返回,检查代码中是否返回了响应报文

如果注释掉这部分,就会出现空白界面

//        resp.getWriter().write("你好");

6.出现无法访问此网站

表示你写的服务器不能运行,一般来说是你的tomcat没有正常运行,此时就要检查tomcat是否正常运行,如果正常运行就需要检查写的ip和端口号是否正确

以上就是本文的所有内容!


目录
相关文章
|
3月前
|
缓存 安全 Java
|
4月前
|
Java 关系型数据库 MySQL
Servlet 教程 之 Servlet 有用的资源
探索Servlet世界:访问Sun's Site获取官方资料,Tomcat作为开源JSP引擎,搭配MySQL Connector/J实现数据库连接。深入学习Java编程,参考The Java Tutorials及Java 2 SDK文档,免费下载Java并关注Sun Developer Network获取最新资源。
36 1
|
设计模式 XML JSON
springMVC 工作原理和流程
springMVC 工作原理和流程
92 0
springMVC 工作原理和流程
|
Java 应用服务中间件 Spring
SpringMVC 请求与响应 -- SpringMVC快速入门保姆级教程(三)(1)
SpringMVC 请求与响应 -- SpringMVC快速入门保姆级教程(三)
|
JSON 程序员 数据格式
SpringMVC 请求与响应 -- SpringMVC快速入门保姆级教程(三)(2)
SpringMVC 请求与响应 -- SpringMVC快速入门保姆级教程(三)
Servlet学习(二):详述servlet的生命周期并动手试验
Servlet学习(二):详述servlet的生命周期并动手试验
103 0
Servlet学习(二):详述servlet的生命周期并动手试验
|
应用服务中间件 API 容器
Servlet入门案例(三)Servlet的生命周期、api和请求方式、工作原理、注解开发
Servlet入门案例(三)Servlet的生命周期、api和请求方式、工作原理、注解开发
112 0
Servlet入门案例(三)Servlet的生命周期、api和请求方式、工作原理、注解开发
|
设计模式 存储 前端开发
SpringMVC入门(工作原理、框架流程、小实例的创建)
SpringMVC入门(工作原理、框架流程、小实例的创建)
113 0
SpringMVC入门(工作原理、框架流程、小实例的创建)
|
前端开发 Java Spring
源码浅析SpringMVC请求的流转过程
Spring MVC框架使用了其”模型-视图-控制器”( Model-View-Controller )架构方式,用于开发灵活且松散耦合的 Web 应用程序。我们都使用过SpringMVC来处理信息,并渲染视图到Browser。但需要注意的是,在现在的架构中,大都采用了前后端分离的情况,而我们在使用SpringMVC的时候,只需要关注M(Model),C(Controller)这两个部分,而视图渲染的部分则交给了前端。
314 0
源码浅析SpringMVC请求的流转过程
|
Java
servlet中创建网站的过程
servlet中创建网站的过程
101 0
servlet中创建网站的过程