0
我正在嘗試獲取max(proj_id)+1的值並在vo中設置值,然後我將數據插入到db中。我在下面的代碼嘗試這一點,但我得到空指針異常....當語句被打如何在java中設置proj_id的值爲max(proj_id)+ 1
public final class CreateProjDAO
{
private static InitialContext context;
String CLASS_NAME="DBConnectionFactory";
public void submitProjectDetails(CreateProjVO createprojVO)
{
String methodname="createConnection";
Connection conn = null;
PreparedStatement psmt;
ResultSet rs=null;
Statement st=null;
int proj_id;
try {
conn = DBConnection.getJNDIConnection();
rs=st.executeQuery("select MAX(PROJ_ID) from CR_PROJECT_DETAILS");
if(!rs.next())
{
proj_id=rs.getInt(1)+1;
System.out.println("Max:"+proj_id);
}
else
{
proj_id=1;
System.out.println("Max:"+proj_id);
}
createprojVO.setId(rs.getString(proj_id));
System.out.println("in DAO");
psmt= conn.prepareStatement("insert into CR_PROJECT_DETAILS(PROJ_ID,PROJ_NAME,PROJ_COST,PROJ_MANAGER) values(?,?,?,?)");
psmt.setString(1, createprojVO.getId());
psmt.setString(2,createprojVO.getName());
psmt.setString(3,createprojVO.getCost());
psmt.setString(4,createprojVO.getManager());
psmt.executeQuery();
System.out.println("conn==="+conn);
conn.close();
System.out.println("Disconnected from database");
} catch (Exception e) {
e.printStackTrace(System.err);
System.out.println("data already exist");
System.out.println("error:"+e);
}
}
}
你得到NPE的確切線是什麼? – AbdullahC 2011-04-20 09:19:01
和異常來自哪一行? – 2011-04-20 09:20:05
在控制檯我剛剛開始這個java.lang.NullPointerException – Akshatha 2011-04-20 09:20:10