文章目录
- 1.servlet创建项目问题说明
- 2.SamrtTomcat插件
- 3.乱码问题的说明
- 4.其他的错误类型说明
- 4.1常见错误之404
- 4.2常见错误之405
- 4.3常见错误之500
- 4.4空白页面/无法访问
1.servlet创建项目问题说明
servlet进行这个项目创建的时候,我们的这个web.xml里面的这个内容就是我们的这个对应内容(之前的文章里面有这个),我们复制进来之后,这个页面的左上角会有一个maven的刷新的选项,这个一定要刷新一下;
1.我们的这个自己的java文件不是在这个org.example这个包的下面,而是在 这个java右键进行创建,如果这个位置选错,我们是找不到这个父类的;
2.另外就是我们即使这个位置是对的,上面的这个xml放进去之后,没有点击这个右上角的刷新的选项,这个父类也是感应不出来的(这个也是我自己在时间的过程中遇到的两个问题);
2.SamrtTomcat插件
这个就是我们的一个IDEA里面的插件,我们创建项目的时候不是需要进行打包吗,这个每一次修改都需要重新进行打包,这个就很麻烦,我们的这个samrt插件相当于就是对于我们的这个普通版本的一个优化,优化之后的这个我们可以直接运行,就不用像之前的那样进行打包,打开这个startup.bat程序之类的这个操作;
我们想要使用这个:正常情况下我们的这个左上角是没有这个的,即使我们下载了,我们需要对于这个进行配置之后才会看见;我们点击这个edit configuration这个选项;
下面的这个就是我们添加这个smarttomcat这个内容,首先需要安装这个插件,安装之后我们点击这个加号,在这个列表里面我们就可以看到我们的这个samrttomcat插件;
name就是我们的命名,将来的这个名字就是我们点击运行按钮的名字,这个修改不修改都是没有问题的;
server就是我们的这个tomcat安装的位置,安装包的位置;
path就是我们的一个配置吧,这个使用默认的就行,这个默认就是我们的项目名字(这个将来会使用浏览器输入这个url,这个path就是我们的这个url里面的一个部分);
一切准备就绪之后,我们的这个左上角就是显示的使用这个smart进行运行我们的程序,我们呢运行就可以了;
这个现象很奇怪,让人误以为这个是报错,实际上这个就是我们的日志信息(但是给人一种报错的感觉,我第一次看老师演示的时候就是这个感觉,后来才知道这个就是日志信息罢了);
看到这个蓝色的吗,这个里面的最后就是我们的上面配置的这个path;
我们的这个日志复制,加上我们的代码里面的这个路径,就可以在这个浏览器上面看到这个打印效果,我们的这个resp的这个hello world就是浏览器显示的,system的这个hello world就是显示在我们的日志里面的;
这个里面的路径:
J1103nm7叫做context path即上下文目录;
/hello也叫做servlet path即小程序路径(这个servlet翻译之后就是服务器端小程序);
这个smarttomcat的好处就是我们的这个内容即使是进行修改了,不需要重新打包,直接在这个浏览器上面刷新就可以了;
3.乱码问题的说明
上面我们的这个write后面的这个是英文的,这个时候如果不去进行追究,这个时候是观察不到这个乱码的问题的,但是如果我们把这个write方法里面的这个内容修改为这个中文就会出现乱码,不信的话你可以试试;
这个乱码原因就是我们的这个java里面的内容使用的是这个utf-8进行编码的,但是我们的这个浏览器是默认使用这个gbk进行解析的,因此这个时候就会出现乱码的情况;
我们想要解决这个乱码的问题,只需要在这个代码里面说明,让我们的这个浏览器使用utf-8进行解析,这样就和我们的这个java里面的这个编码的格式是一致的,就可以解决之前出现的这个乱码的问题;
4.其他的错误类型说明
4.1常见错误之404
这个错误的原因可能是下面的两个情况:
1)我们的这个url路径写错了:我们需要知道这个路径是什么构成的,一个是我们的这个主机加上端口号,后面的就是我们的这个smarttomcat上面配置的名字(没有配的话就是我们的创建的项目的名字);
2)我们的这个webapp里面的这个内容写错了:我们创建的这个项目里面有这个webapp目录,这个目录里面是有这个WEB-INF这个目录,下面还是有这个web.xml文件,我们的这个文件里面的这个内容之类的可能是写错了;
4.2常见错误之405
这个错误的原因就是我们的这个方法没有进行实现,就是我们继承的这个父类的里面的这个方法没有进行重写,我们的这个项目里面是需要对于这个父类里面的这个doget之类的这个方法进行重写的,如果没有进行重写就会报错405;
或者是我们使用这个IDEA里面的这个代码自动填充的功能的时候,这个没有修改,因为这个自动填充的是进行这个super之类的调用,但是这个并不是我们想要的;
4.3常见错误之500
这个是我们的服务器内容错误,服务器在哪里,我们的这个idea里面写的这个代码就充当了这个服务器的功能,我们的这个里面的代码逻辑就是对于这个浏览器的请求进行解析,返回这个响应显示在我们的这个客户端浏览器上面,我们的这个服务器的错误会在运行这个tomcat的时候包含在我们的这个日志里面;
4.4空白页面/无法访问
空白页面就可能是我们的这个响应报文没有正常返回,就是我们调用的这个resp.write方法里面的这个参数的内容,这个是应该打印在我们的这个浏览器页面上的;
至于这个无法访问,可能就是因为tomcat没有正常的启动,或者是这个端口号,ip之类的这个原因;
面的这个参数的内容,这个是应该打印在我们的这个浏览器页面上的;
至于这个无法访问,可能就是因为tomcat没有正常的启动,或者是这个端口号,ip之类的这个原因;