【Javaweb——tomcat常见错误】java.lang.NullPointerException_向过去说再见的博客-程序员秘密

技术标签: # javaWEB  java  后端  

参考:java.lang.NullPointerException出现的几种原因以及解决

运行程序时,发生错误:
在这里插入图片描述
错误类型:java.lang.NullPointerException
错误的地方:两个doPost

java.lang.NullPointerException出现的几种原因:
1、字符串变量未初始化
2、接口类型的对象没有用具体的类初始化,比如:
Map map // 会报错
Map map = new Map(); //则不会报错了
3、当一个对象的值为空时,你没有判断为空的情况。
4、字符串与文字的比较,文字可以是一个字符串或Enum的元素,如下会出现异常
String str = null;
if(str.equals(“Test”)){
//这里的代码将不会被触发,因为会抛出java.lang.NullPointerException异常。
}
5、优先使用String.valueOf()方法代替toString()
当程序代码需要对象的字符串表示形式时,请避免使用该对象的toString方法。如果你的对象的引用等于null,NullPointerException则会抛出,使用静态String.valueOf方法,该方法不会抛出任何异常并打印"null"
6、class被声明了类型, 默认 class = null; 这样在调用class中方法的时候系统只能给你个空指针异常, 给其实例化就好了:class = new Class();
7、返回null,方法的返回值不要定义成为一般的类型,而是用数组。这样如果想要返回null的时候就能避免许多不必要的NullPointerException

我怀疑是传送的参数有错误

发送的servlet参数为“student”

request.setAttribute("student", student);
		RequestDispatcher rd=request.getRequestDispatcher("/GetServlet");

然后接收的servlet准备接收的参数却为"Student",接口类型的对象没有用具体的类初始化

Student student=(Student)request.getAttribute("Student");
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_44308180/article/details/108937450

智能推荐

CVPR2021提出的一些新数据集汇总_CV技术指南(公众号)的博客-程序员秘密

前言在《论文创新的常见思路总结》(点击标题阅读)一文中,提到过一些新的数据集或者新方向比较容易出论文。因此纠结于选择课题方向的读者可以考虑以下几个新方向。文末附相关论文获取方式。本文来自公众号CV技术指南的技术总结系列关注公众号CV技术指南 ,专注于计算机视觉的技术总结、最新技术跟踪、经典论文解读。一些新发布的数据集可以提供一个窗口,通过这些数据集可以了解试图解决的问题的复杂程度。公共领域中新发布的数据集可以很好地代表理解计算机视觉的发展以及有待解决的问题的新途径。本文简要总结.

【集群部署】Windows下Apache2.4负载均衡+Tomcat7集群+session共享_KerbalH的博客-程序员秘密

一、准备工具:Apache2.4,JDK1.7,Tomcat7(最少两个)二、Apache安装好后配置1.首先打开一些必要的Module注释(把前面的#号去掉就行),在conf/httpd这个文件中LoadModule proxy_module modules/mod_proxy.soLoadModule proxy_ajp_module modules/mod_proxy_ajp.soLoa...

MyBatis一次执行多条SQL语句配置_Hi-Darling的博客-程序员秘密

需要在数据库连接参数加上allowMultiQueries=true

关于IDEA导入数据库jar包的问题_your__god的博客-程序员秘密

最近上课的时候需要用到Java代码连接数据库,由于本人也是新手,所以也是上网找了度娘才知道的,现在给大家分享一下第一步,点击IDEA左上角的File第二部,点击project Stucture…第三步 点击加号,选择第一个选项第四步,选择你的jar包的地址第五步,点击ok,即可完成以上是个人的一些学习心得 希望能帮到大家...

SpringMvc文件上传_XiaoZJun的博客-程序员秘密

SpringMvc文件上传所需配置测试结果所需配置1.添加文件上传的(pom)相关依赖 <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.3</version> </depe

随便推点

Data_yby06的博客-程序员秘密

数据处理Tedu Python 教学部Author:吕泽文章目录数据处理数据处理1. 文件处理1.1 引入1.2 文件读写操作1.2.1 打开文件1.2.2 读取文件1.2.3 写入文件1.2.4 关闭文件1.2.5 with操作1.2.6 缓冲区1.2.7 文件偏移量1.3 os模块2. 正则表达式2.1 概述2.2 元字符使用2.3 匹配规则2.3.1 特殊字符匹配2.3.2 贪婪模式和非贪婪模式2.3.3 正则表达式分组2.3.4 正则表达式匹配原则2.4 Python r

Android 9.0 (P版本) 亮度控制接口变更_法迪的博客-程序员秘密

1. Android 9.0 之前的亮度控制接口import android.os.IPowerManager;import android.provider.Settings;import android.content.Context; /** * Used by the settings application and brightness control wid...

第05章-可视化技术(3)_weixin_30487317的博客-程序员秘密

【译者:这个系列教程是以Kitware公司出版的《VTK User’s Guide -11th edition》一书作的中文翻译(出版时间2010年,ISBN: 978-1-930934-23-8),因为时间关系,我们不能保证每周都能更新本书内容,但尽量做到一周更新一篇到两篇内容。敬请期待^_^。欢迎转载。另请转载时注明本文出处。谢谢合作!同一时候,因为译者水平有限,出错之处在所难...

【树莓派4B深度学习 yolo】Chap.1 给树莓派配置yolo模型(darknet-nnpack)【深度学习 招式篇】_Jie_MSD的博客-程序员秘密

【树莓派4B深度学习 yolo】Chap.1 给树莓派配置yolo模型(darknet-nnpack)【深度学习 招式篇】在树莓派4B上使用YOLOhttps://yanwei-liu.medium.com/raspberry-pi%E5%AD%B8%E7%BF%92%E7%AD%86%E8%A8%98-%E4%BA%8C%E5%8D%81%E4%B8%83-%E5%9C%A8pi%E4%B8%8A%E5%9F%B7%E8%A1%8Cyolov3-9cf124d5d582任剑杰一、运行方式:A

python特殊函数 __call__()_genous110的博客-程序员秘密

call在Python中,函数其实是一个对象:f = absf.name‘abs’f(-123)123由于 f 可以被调用,所以,f 被称为可调用对象。所有的函数都是可调用对象。一个类实例也可以变成一个可调用对象,只需要实现一个特殊方法__call__()。我们把 Person 类变成一个可调用对象:class Person(object):def in...

推荐文章

热门文章

相关标签