簡體   English   中英

運行我的小程序時出現 java.lang.NullPointerException

[英]java.lang.NullPointerException while running my applet

我正在嘗試進行一些 mysql 表插入操作,但是當我從我的小程序輸入時我發現了這個 java.lang.NullPointerException,無法弄清楚我在這段代碼中哪里錯了,你能幫幫我嗎! 我嘗試在沒有小程序的情況下使用它工作的同一部分代碼進行數據庫操作

import java.applet.*;
import java.sql.*;
import java.awt.*;
import java.awt.event.*;
public class StudentEntry extends Applet implements ActionListener {
/**
* 
*/
private static final long serialVersionUID = 1L;
Label l1,l2,l3,l4;
TextField t1,t2,t3,t4;
Button b1;
public void init(){
Label l1=new Label("Enter your Name : ");
add(l1);
TextField t1=new TextField(20);
add(t1);
Label l2=new Label("Enter your Sem : ");
add(l2);
TextField t2=new TextField(20);
add(t2);
Label l3=new Label("Enter your Branch : ");
add(l3);
TextField t3=new TextField(20);
add(t3);
Label l4=new Label("Enter your Contact Number : ");
add(l4);
TextField t4=new TextField(20);
add(t4);
Button b1=new Button("Submit");
add(b1);
b1.addActionListener(this);
}
public void actionPerformed(ActionEvent ae)
{
try
{  
String sname=t1.getText();
String semT=t2.getText();
int sem=Integer.parseInt(semT);
String branch=t3.getText();
String contact=t4.getText();
Class.forName("com.mysql.jdbc.Driver");  
Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/Mice","root","1234");  
Statement stmt=con.createStatement(); 
String Uquery="Insert into StudentDetails(student_name,sem,branch,student_con)values('"+sname+"',"+sem+",'"+branch+"','"+contact+"')";
int val=stmt.executeUpdate(Uquery);  
if(val==1)
{
System.out.println("succesfull inserted");
}
ResultSet rs=stmt.executeQuery("select * from StudentDetails");  
while(rs.next())  
System.out.println(rs.getInt(1)+"  "+rs.getString(2)+"  "+rs.getInt(3)+"  "+rs.getString(4)+"  "+rs.getString(5));  
con.close();  
}
catch(Exception e)
{ 
System.out.println(e);
}  
}

//代碼結束

一些東西:

1) 請更改 System.out.println(e); 在catch語句中放入e.printStackTrace(); ,你可能會發現哪里出錯了...

2) 對於 NullPointerException,您的 init() 函數並沒有真正初始化您的“TextField t1,t2,t3,t4;”,請在 init 函數中使用 this.t1 來交換 TextField t1。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM