jsp前端向后台数据库传空值

例如:

PreparedStatementstmt = null;
sql = "UPDATE TEMPL SET PHONENO = ? "
+ "WHERE EMPNO = '000110' ";
stmt = con.prepareStatement(sql);
if (some condition)
{ stmt.setString (1, name);}
else
{ stmt.setString (1, newphone); }
updateCount = stmt.executeUpdate();
}



  这种方式适用范围有限,当setInt(1,null)或是setFloat(1,null)、setShort(1,null)时都无法正常运行,只有当类型为java对象时可以执行成功,例如setString(1,new String(null)、setBigDecimal(1,new BigDecimal(null))等。

还有一种解决办法是通过判断传入的是否为空去重新new一个对象

      if(name==null)
         name=new String();