首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Eclipse开发 >

,java web的一个有关问题

2013-07-09 
求助,java web的一个问题我才学java web几天,依照教材上敲了一些程序,可是在eclipse中运行报错。明明和教材

求助,java web的一个问题
我才学java web几天,依照教材上敲了一些程序,可是在eclipse中运行报错。明明和教材上一模一样,为什么我这个就报错了呢?
我学这个时间还不太久,我按教材上敲了这些程,但是eclipse报错,很是烦恼,和书上一模一样的,怎么就错了呢?
HTTP Status 500 - 

--------------------------------------------

type Exception report

message 

description The server encountered an internal error () that prevented it from fulfilling this request.

exception 

java.lang.NullPointerException
com.study.DAO.studentDAO.studenname(studentDAO.java:36)
com.study.servlet.studentservlet.doPost(studentservlet.java:43)
javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

以下是我的两个程序
-------------------------------------
package com.study.DAO;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import java.util.ArrayList;

import com.student.bean.student;



public class studentDAO {
     private Connection con=null;
   
      public void initCon(){
      
      try{
      Class.forName("com.jdbc.mysql.Driver");
           String url="jdbc:mysql://localhost:3306/lianxi";
      con=DriverManager.getConnection(url,"root","root");
      
      }
      catch(Exception ex){ex.printStackTrace();}
      }
      
      
      public ArrayList studenname(String stuname){
      this.initCon();
      ArrayList stud=new ArrayList();
     String sql="SELECT stuid,stuname,stusex,stuphone,stuplace FROM student WHERE stuname like '%"+stuname+"%'";//select * from student where stuname like '%"+stuname+" %'
     try {  
    
    Statement stmt=con.createStatement();
    ResultSet rs=stmt.executeQuery(sql);
    
    

while(rs.next())
{
student stu=new student();
stu.setStuid(rs.getString("stuid"));
stu.setStuname(rs.getString("stuname"));
stu.setStusex(rs.getString("stusex"));
stu.setStuphone(rs.getString("stuphone"));
stu.setStuplace(rs.getString("stuplace"));
stud.add(stu);

}

} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally{
this.closeCon();

}
     
return stud;
      
      }
      
      
      
     public void closeCon(){


     try{
     if(con!=null)
     {con.close();
     con=null;
     }
     }catch(SQLException ex){ex.printStackTrace();}
     }
     
}
------------------------------------------------
package com.study.servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.study.DAO.studentDAO;

public class studentservlet extends HttpServlet {

/**
 * Constructor of the object.
 */
public studentservlet() {
super();
}

/**
 * Destruction of the servlet. <br>
 */
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
// Put your code here
}


public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

String stuname=request.getParameter("stuname");
try{
stuname=new String(stuname.getBytes("utf-8"));
}catch( Exception ex){ex.printStackTrace();}
//调用javabean查询学生信息(data access object  DAO)
 studentDAO StudentDAO=new studentDAO();
     ArrayList stus=StudentDAO.studenname(stuname);
request.setAttribute("stus", stus);


//调转到jsp页面显示查询结果
 ServletContext sc=this.getServletContext();
 RequestDispatcher rs=sc.getRequestDispatcher("/stushow.jsp");
rs.forward(request, response);
}

/**
 * Initialization of the servlet. <br>
 *
 * @throws ServletException if an error occurs
 */
public void init() throws ServletException {
// Put your code here
}

}
------------------------------------------------
package com.student.bean;

public class student {
private String stuid;
private String stuname;
private String stusex;
private String stuphone;
private String stuplace;
public String getStuid() {
return stuid;
}
public void setStuid(String stuid) {
this.stuid = stuid;
}
public String getStuname() {
return stuname;
}
public void setStuname(String stuname) {
this.stuname = stuname;
}
public String getStusex() {
return stusex;
}
public void setStusex(String stusex) {
this.stusex = stusex;
}
public String getStuphone() {
return stuphone;
}
public void setStuphone(String stuphone) {
this.stuphone = stuphone;
}
public String getStuplace() {


return stuplace;
}
public void setStuplace(String stuplace) {
this.stuplace = stuplace;
};

}
------------------------------------------
不知道你们曾经有没有遇到这样的问题?请帮助我分析一下这个问题在哪吧,java web的一个有关问题

[解决办法]
com.study.DAO.studentDAO.studenname(studentDAO.java:36)


com.study.DAO.studentDAO.java 的36行 ,报空指针异常

Statement stmt=con.createStatement();
先确认的 con不为null先

热点排行