双11狂欢大促

盲盒赢 定制羽绒服

开启惊喜盲盒,抽取你的专属好礼

— 惊喜奖品抢先看 —

java.lang.NullPointerException问题,请指教

zhenai0512 zhenai0512 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
情况描述如下:
编译正常,运行抛出空指针异常。
总共三个文件,一个CreateDBServlet.java文件,一个web.xml文件,一个自己配的ch08.xml文件。我把数据库驱动包已经放到相应目录下了,具体代码如下:

CreateDBServlet.java
-------------------------------------------------------------------------------------------------
package org.sunxin.lesson.jsp.bookstore;

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.sql.*;


public class CreateDBServlet extends HttpServlet{
private String url1;
private String user;
private String password;

public void init() throws ServletException{
String driverClass = getInitParameter("driverClass");
url1 = getInitParameter("url1");
user = getInitParameter("user");
password = getInitParameter("password");

try{
Class.forName(driverClass); //加载并注册驱动程序
}
catch(ClassNotFoundException ce){
throw new UnavailableException("加载数据库驱动失败");//如果没找到驱动程序,抛出不可异常
}

}
public void doGet(HttpServletRequest req,HttpServletResponse resp)throws ServletException , IOException{
Connection conn = null;
Statement stmt = null;
try{
conn = DriverManager.getConnection(url1,user,password);
stmt = conn.createStatement();
stmt.executeUpdate("create database bookstore");
stmt.executeUpdate("use bookstore");
stmt.executeUpdate("create table bookinfo(id INT not null primary key,title VARCHAR(50) not null ,author VARCHAR(50) not null,bookconcern VARCHAR(100) not null,publish_date DATE not null,price FLOAT(4,2) not null,amount SMALLINT,remark VARCHAR(200))ENGINE = InnoDB");
stmt.addBatch("insert into bookinfo values(1,'Java从入门到精通','张三','张三出版社','2004-6-1' ,34.00,35,null)");
stmt.addBatch("insert into bookinfo values(2,'JSP深入编程','李四','李四出版社','2004-10-1' ,56.00,20,null)");
stmt.addBatch("insert into bookinfo values(3,'J2EE高级编程','王五','王五出版社','2005-3-1',78.00,10,null)");
stmt.executeBatch();

PrintWriter out = resp.getWriter();
out.println("success!");
out.close();
}
catch(SQLException se){
se.printStackTrace();
}
finally{
if(stmt!=null){
try{
stmt.close();
}
catch(SQLException se){
se.printStackTrace();
}
stmt = null;
}
if(conn!=null){
try{
conn.close();
}
catch(SQLException se){
se.printStackTrace();
}
conn = null;
}
}
}
}
-----------------------------------------------------------------------------------------------------------------
web.xml代码如下:
-----------------------------------------------------------------------------------------------------------------
<?xml version="1.0" encoding="gbk"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>SetCharacterEncodingFilter</filter-class>
</filter>

<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

<servlet>
<servlet-name>CreateDBServlet</servlet-name>
<servlet-class>org.sunxin.lesson.jsp.bookstore.CreateDBServlet</servlet-class>


<init-param>
<param-name>dirverClass</param-name>
<param-value>com.mysql.jdbc.Driver</param-value>
</init-param>

<init-param>
<param-name>url</param-name>
<param-value>jdbc:mysql://localhost:3306/mysql</param-value>
</init-param>

<init-param>
<param-name>user</param-name>
<param-value>root</param-value>
</init-param>

<init-param>
<param-name>password</param-name>
<param-value>root</param-value>
</init-param>
</servlet>

<servlet-mapping>
<servlet-name>CreateDBServlet</servlet-name>
<url-pattern>/createdb</url-pattern>
</servlet-mapping>

</web-app>
--------------------------------------------------------------------------------------------------------
ch08.xml代码如下:
--------------------------------------------------------------------------------------------------------
<Context path="/ch08" docBase="E:\JSPLesson\ch08" reloadable="true" />
...全文

相关推荐

CRASH问题:java.lang.NullPointerException

java.lang.NullPointerException: Attempt to invoke virtual method ‘void android.widget.ImageView.setImageResource(int)’ on a null object reference 今天在家练习ListView的时候,遇到一个java.lang.NullPointerException的空指针异常,log如下: 2020-05-10 15:40:29.249 20436-20436/? E/k.myapplicatio: Unknown bits set in runtime_flag

weixin_38571603

java.lang.NullPointerException

java.lang.NullPointerException错误解决办法 ,很不错的文档

qq602352823

java.lang.NullPointerException的解决方法

启动Tomcat时出现了下面的这种错误,找了很久的原因终于知道是因为tomcat和jdk要放在任意一个盘的根目录下面,而不能是放在 而不能放在某个盘根目录下的子目录里面,最好是放在C盘的根目录下面(比如C:\tomcat-6.0.20、C:\jdk1.6)!

xiaodidou

java.lang.NullPointerException出现的几种原因及解决方案

主要介绍了java.lang.NullPointerException出现的几种原因及解决方案,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

weixin_38722193

绝望,上传文件失败。。遇到并解决java.lang.NullPointerException

解决报错:java.lang.NullPointerException 解决方法:将文件的编码方式改为utf-8即可! 截图: 修改成功后:   代码: import os import json import re def json_to_html(i,cvenum): print('正在处理:'+cvenum) head = 漏洞对应信息摘要 \ cvesummary for this cve tail = #padding-left: 320px cvesummary_context = head + i +

weixin_38704156
评论 23
收藏 已收藏
分享
返回顶部
zhenai0512
Web 开发 81,108 成员 341,721 内容